zscript

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);    
}