次の方法で共有


CFileDialog::DoModal

Windows に共通ファイル ダイアログ ボックスを表示し、ユーザーがファイルおよびディレクトリを参照し、ファイル名を入力できるように、この関数を呼び出します。

virtual INT_PTR DoModal( );

戻り値

IDOKIDCANCELIDCANCEL が返された場合は、エラーが発生したかどうかを確認するに CommDlgExtendedError Windows の関数を呼び出します。

IDOKIDCANCEL は、ユーザーが[OK]または[キャンセル]ボタンを選択したかどうかを示す定数です。

解説

m_ofn の構造体のメンバーを設定してによるさまざまなファイル ダイアログ ボックスのオプションを初期化する場合は DoModalを呼び出す前にそのされますが、ダイアログ オブジェクトが構築されたら。

たとえば、ユーザーが複数のファイルを選択できるようにする場合は、CFileDialog クラスのコード例に示すように DoModalを呼び出す前に OFN_ALLOWMULTISELECT のフラグを設定します。

ユーザーがダイアログ ボックスの[OK]または[キャンセル]をクリックするか、ダイアログ ボックスのコントロール メニューから近いオプションを選択すると、コントロールは、アプリケーションに戻ります。次に、ダイアログ ボックスに情報を設定またはユーザー入力を取得するために、他のメンバー関数を呼び出すことができます。

DoModal は、クラスから CDialogオーバーライドされた仮想関数です。

使用例

void CMyClass::OnFileOpen()
{
   // szFilters is a text string that includes two file name filters:
   // "*.my" for "MyType Files" and "*.*' for "All Files."
   TCHAR szFilters[]= _T("MyType Files (*.my)|*.my|All Files (*.*)|*.*||");

   // Create an Open dialog; the default file name extension is ".my".
   CFileDialog fileDlg(TRUE, _T("my"), _T("*.my"),
      OFN_FILEMUSTEXIST | OFN_HIDEREADONLY, szFilters);

   // Display the file dialog. When user clicks OK, fileDlg.DoModal() 
   // returns IDOK.
   if(fileDlg.DoModal() == IDOK)
   {
      CString pathName = fileDlg.GetPathName();

      // Implement opening and reading file in here.

      //Change the window's title to the opened file's title.
      CString fileName = fileDlg.GetFileTitle();

      SetWindowText(fileName);
   }
}

必要条件

ヘッダー : afxdlgs.h

参照

関連項目

CFileDialog クラス

階層図

CDialog::DoModal

CFileDialog::CFileDialog