■プログラム説明(ソースコード説明)
まず、ダイアログを作成します。作成されたダイアログにadd()を使い座標を表示する固定テキストを追加します。ウィンドウが移動した時のイベントはonMoveなのでダイアログオブジェクトにonMoveイベントの処理内容を指定します。通常の関数を定義し関数名を指定するか、サンプルのように関数名を書かずに(匿名関数)処理内容を指定します。
設定が終わったらshow()を使い作成されたダイアログを表示します。ダイアログが移動されると固定テキストの文字がダイアログの座標になります。ダイアログの座標値はboundsプロパティに左、上、右、下の順番で入っています。
■ソースコード
uDlg = new Window('dialog','サンプル',[200,100,580,245]);
uDlg.okBtn = uDlg.add("button",[130,80,225,80+25], "OK!", { name:"ok"});
uDlg.sText = uDlg.add("statictext",[130,10,250,10+45], "0");
uDlg.onMove = function ()
{
uDlg.sText.text = "XY=("+uDlg.bounds[0]+", "+uDlg.bounds[1]+")";
}
uDlg.show();
■使い方
1:ファイルメニューからスクリプトを実行します。
2:ダイアログが表示されます。
3:ダイアログを移動させるとダイアログの左上の座標が表示されます。
■ポイント
ダイアログで指定することができるイベントには以下の3種類があります。
onClose ダイアログが閉じられた
onMove ダイアログが移動した
onResize サイズが変更された
■注意
固定テキストの幅をはみだして文字が表示される場合には文字列の末尾が...で表示されます。MacOS X Panther (10.3.x)ではOKボタンを作成しないとダイアログが正常に表示されません。escキーまたはreturn, enterキーを押すとダイアログを消すことができます。
■実際のスクリプトをダウンロード(sample.js.zip)