![]() |
||||||||||||||||||||||||||||||||
| WideStudio Application Builder User's Guide(Ocaml言語) | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
オブジェクトのプロパティ値を取得/設定するにはイベントプロシージャにおいて、オブジェクトのプロパティに対してアクセ スすることができます。次のAPIを利用します。
プロパティ値の取得オブジェクトのプロパティを取得するには、WSCbase クラスのメンバ関数である getProperty() を利用します。
...
let event_procedure obj =
(* "x" (X座標)プロパティの値の文字列による取得*)
let x = obj -> getProperty ("x")
in print_string( get_string x); (* 文字列の取得 *)
print_newline();
(* "y" (Y座標)プロパティの値の取得 *)
let y = obj -> getProperty ("y")
in print_int(get_int y); (* long 型の値の取得 *)
print_newline();
()
let _ = Callback.register "event_procedure" event_procedure
"x" の例では、文字列で値を取得し、
"y" の例では、数値型で受け取っています。関数 getProperty() は、
WSCvariant 型で値を返しますが、WSCvariant 型は、それぞれの型の
値を取り出す事ができます。
プロパティ値の設定オブジェクトのプロパティを設定するには、WSCbase クラスのメンバ関数である setProperty() を利用します。
...
let event_procedure obj =
(* "x" (X座標)プロパティの文字列による設定 *)
let x = "100"
in obj -> setProperty ("x", (make_string x) );
(* "y" (Y座標)プロパティの設定 *)
let y = "100"
in obj -> setProperty ("y", (make_int y) );
()
let _ = Callback.register "event_procedure" event_procedure
"x" の例では、文字列で値を設定しています。"y" の例では、整数型で値
を設定しています。プロパティ値の描画への反映通常、イベントプロシージャの実行直後に反映されますが、変更後、プロパ ティの値を直ちに反映させたい場合、update()、draw()、redraw() を呼び 出します。ウィンドウシステムによっては、(例えば、X11 システムの場合など) 描画 を行った際、すぐにウィンドウシステムに反映されない場合があります。そ のような場合は、WSDappDev クラスの update() を呼び出してください。
...
let event_procedure obj =
!obj1 -> setProperty ("labelString", "テキスト");
!obj1 -> update() (* 直ちにオブジェクトを更新。*)
_WSGIappDev'() -> "update" (); (* ウィンドウシステムへの描画要求を反映させます。*)
!obj2 -> setProperty ("labelString", "テキスト");
!obj2 -> update() (* 直ちにオブジェクトを更新。*)
_WSGIappDev'() -> update (); (* ウィンドウシステムへの描画要求を反映させます。*)
()
let _ = Callback.register "event_procedure" event_procedure
Document Release 3.80 for WideStudio ver 3.80, Jan 2005
|
||||||||||||||||||||||||||||||||
![]() |
| バグ情報、ご質問等ございましたら、メーリングリストでご確認の上、 御気軽にこちらの方までよろしくお願いいたします。 |
|
Copyright©WideStudio Development Team,1999-2005
|

