WideStudio Application Builder User's Guide(Ocaml言語)

ファイル選択ダイアログ



ファイル選択ダイアログの表示

ファイル選択ダイアログの使い方について触れてみましょう。ファイル選択ダ イアログの様なダイアログに関しては、便利な表示メソッドpopup が用意され ています。



[ファイル選択ダイアログ]

popup メソッドは、単にダイアログを表示させるだけでなく、オペレータがOK やキャンセルなどを選択した結果を関数復帰で返します。したがって、関数を 呼ぶだけで、ダイアログの表示から、ダイアログの終了した時点の選択結果の 取得を行うことができます。ファイル選択ダイアログやメッセージダイアログ に関して実際のサンプルプログラムを見ていきましょう。

(*----------------------------------------------------------*)
(*Function for the event procedure                          *)
(*----------------------------------------------------------*)
open Swig
open Mwt
open Mwtlib

let btnep2 obj =
  (* do something...*)
  let fs = _WSGIappFileSelect '() in                           (* A *)
  fs->setProperty("maskFileName","ml");                        (* B *)
  fs->setProperty("defaultPosition",_True);                    (* C *)
  let ret = fs->popup() in                                     (* D *)
  let msg = _WSGIappMessageDialog '() in                       (* E *)
  msg->setProperty("width",500);                               (* F *)
  msg->setProperty("height",120);                              (* G *)
  msg->setProperty("defaultPosition",_True);                   (* H *)
  if get_int ret = get_int _WS_DIALOG_OK then begin            (* I *)
    let str = get_string(fs->getFileName()) ^ " が選択されました。" in
    ignore(msg->setProperty("labelString",(make_string(str))));
    ignore(msg->popup());
  end else
  if get_int ret = get_int _WS_DIALOG_NO then begin            (* J *)
    ignore(msg->setProperty("labelString","選択されませんでした。"));
    ignore(msg->popup());
  end else
  if get_int ret = get_int _WS_DIALOG_CANCEL then begin        (* K *)
    ignore(msg->setProperty("labelString","選択は取り消されました。"));
    ignore(msg->popup());
  end;

  ()
let _ = Callback.register "btnep2" btnep2

(A) でグローバルインスタンスアクセス関数を使用して、ファイル選択ダイア ログのグローバルインスタンスにアクセスします。ファイル選択ダイアログな どのクラスには、あらかじめいつでも利用できるようにグローバルなインスタ ンスが1つ用意されています。そして、グローバルインスタンスアクセス関数 によってアクセスできるようになっています。

(B),(C)でプロパティを設定し、(D) で、ダイアログを表示状態にします。実 際に選択が行われると、popup メソッドが復帰して来ます。

ファイル選択ダイアログの選択結果をメッセージダイアログを使って表示して みるとします。(E),(F),(G),(H)で、メッセージダイアログのグローバルイン スタンスを取得して、プロパティを設定します。

(I) では、選択されたファイルをメッセージ文字列として表示します。 (J) では、ファイル選択が無かった主旨をメッセージ文字列として表示します。 (K) では、キャンセルされた主旨をメッセージ文字列として表示します。
Document Release 3.80 for WideStudio ver 3.80, Jan 2005


WideStudio documents index | 目次
バグ情報、ご質問等ございましたら、メーリングリストでご確認の上、 御気軽にこちらの方までよろしくお願いいたします。