zscriptはZUMLページが生成された際、処理されるスクリプトコードを定義する特別な要素です。代表的な使用方法は初期化、グローバル変数及びメソッドの宣言です。
【補足】:
zscriptではELを使用できません。
たとえば、下の例はボタンが押されるたびに、異なったメッセージを表示します。.
<window title="Hello" border="normal">
<button label="Say Hello" onClick="sayHello()"/>
<zscript>
int count = 0;
void sayHello() { //declare a global function
alert("Hello World! "+ ++count);
}
</zscript>
</window>
【補足】: zscriptはページを読み込むときに一度だけ、翻訳します。それは大抵、初期変数とメソッドを定義します。
デフォルトで、スクリプト言語はJavaに設定されています。しかし、language属性を使えば異なった言語を選ぶことができます。なお、languageは大文字と小文字を識別しません。
<zscript language="javascript">
alert('Say Hi in JavaScript');
new Label("Hi, JavaScript!").setParent(win);
</zscript>イベントハンドラのスクリプト言語を指定するために、以下のように言語名(この例ではjavascript)を前置き記述します。補足:言語名の前後にはスペースを入れてはいけません。
<button onClick="javascript: do_something_in_js();"/>
これによって、同じページに異なった言語でスクリプトを書くことができます。
コードとビューを別にするために、開発者はスクリプトコードを他のファイルに保存することができます。たとえばsay
Hello
.zsと作り、それから、src属性を使いそれを参照します。
<window title="Hello" border="normal"> <button label="Say Hello" onClick="sayHello()"/> <zscript src="sayHello.zs"/> </window>
sayHello.zsの中身は以下のようにします。
int count = 0;
void sayHello() { //declare a global function
alert("Hello World! "+ ++count);
}