WideStudio Logo
WideStudio
Programming Guide
WideStudio Index
目次


ファイル選択ダイアログ



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

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



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

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

#----------------------------------------------------------
#Function for the event procedure
#----------------------------------------------------------
def btnep2(object)
  # アプリケーションに1つあらかじめ用意されています。
  # ファイル選択ダイアログのインスタンスにアクセスします。
  fs = Mpfc::WSGIappFileSelect()                 #(A)
  fs.setProperty("maskFileName","rb")            #(B)
  fs.setProperty("defaultPosition",Mpfc::True)   #(C)
  ret = fs.popup()                              #(D)

  # アプリケーションに1つあらかじめ用意されている
  # メッセージダイアログのインスタンスを取得する。
  msg = Mpfc::WSGIappMessageDialog()             #(E)
  msg.setProperty("width",500)                   #(F)
  msg.setProperty("height",120)                  #(G)
  msg.setProperty("defaultPosition",Mpfc::True)  #(H)

  if ret == Mpfc::WS_DIALOG_OK                   #(I)
    str = fs.getFileName() + " が選択されました。" 
    msg.setProperty("labelString",str) 
    msg.popup() 
  elsif ret == Mpfc::WS_DIALOG_NO                #(J)
    msg.setProperty("labelString","選択されませんでした。") 
    msg.popup() 
  elsif ret == Mpfc::WS_DIALOG_CANCEL            #(K)
    msg.setProperty("labelString","選択は取り消されました。") 
    msg.popup() 
  end
end

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

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

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

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

Document Release 3.70 for WideStudio ver 3.70, May 2004


WideStudio documents index | 目次

Copyright(C) WideStudio Development Team, 1999-2004 Last modified: May 25, 2004