Wide Studio Programmer's Guide

Wide Studio Home
Up to


ファイル選択ダイアログ



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

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



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

popup メソッドは、単にダイアログを表示させるだけでなく、 オペレータがOKやキャンセルなどを選択した結果を 関数復帰で返します。 したがって、関数を呼ぶだけで、ダイアログの表示から、 ダイアログの終了した時点の選択結果の取得を行うことができます。 ファイル選択ダイアログやメッセージダイアログに関して 実際のサンプルプログラムを見ていきましょう。
#include <WScom.h>
#include <WSCfunctionList.h>
#include <WSCbase.h>
#include <WSCfileSelect.h> //(A)
#include <WSCmessageDialog.h> //(B)
//----------------------------------------------------------
//Function for the event procedure
//----------------------------------------------------------
void btnep2(WSCbase* object){
  //アプリケーションに1つあらかじめ用意されています。
  //ファイル選択ダイアログのインスタンスにアクセスします。
  WSCfileSelect* fs = WSGIappFileSelect(); //(C)
  fs->setProperty(WSNmaskFileName,"cpp");  //(D)
  fs->setProperty(WSNdefaultPosition,True); //(E)
  long ret = fs->popup();                  //(F)

  //アプリケーションに1つあらかじめ用意されている
  //メッセージダイアログのインスタンスを取得する。
  WSCmessageDialog* msg = WSGIappMessageDialog(); //(G)
  msg->setProperty(WSNwidth,500);                 //(H)
  msg->setProperty(WSNheight,120);                //(I)
  msg->setProperty(WSNdefaultPosition,True);      //(J)

  if (ret == WS_DIALOG_OK){           //(K)
    WSCstring  str;
    str << fs->getFileName() << " が選択されました。";
    msg->setProperty(WSNlabelString,str);
    msg->popup();
  }else if (ret == WS_DIALOG_NO){     //(L)
    msg->setProperty(WSNlabelString,"選択されませんでした。");
    msg->popup();
  }else if (ret == WS_DIALOG_CANCEL){
    msg->setProperty(WSNlabelString,"選択は取り消されました。");
    msg->popup();                     //(M)
  }
}
(A),(B) でファイル選択ダイアログやメッセージダイアログにアクセスするので、 ヘッダーファイルをインクルードしておきます。 (C) でグローバルインスタンスアクセス関数を使用して、 ファイル選択ダイアログのグローバルインスタンスにアクセスします。 ファイル選択ダイアログなどのクラスには、 あらかじめいつでも利用できるようにグローバルなインスタンスが 1つ用意されています。 そして、グローバルインスタンスアクセス関数によって アクセスできるようになっています。 (D),(E)でプロパティを設定し、 (F) で、ダイアログを表示状態にします。 実際に選択が行われると、popup メソッドが復帰して来ます。
ファイル選択ダイアログの選択結果をメッセージダイアログを使って 表示してみるとします。 (G),(H),(I),(J)で、 メッセージダイアログのグローバルインスタンスを取得して、 プロパティを設定します。 (K) では、選択されたファイルをメッセージ文字列として表示します。 (L) では、ファイル選択が無かった主旨をメッセージ文字列として表示します。 (M) では、キャンセルされた主旨をメッセージ文字列として表示します。
Document Release 2.0

For Use with Wide Studio Release 2.0, Spring 2002


Wide Stuido Home | Up to

Copyright(C) S. Hirabayashi, 1999-2002 Last modified: January 1, 2002