CFileDialogクラス ファイル操作用の Windows のコモン ダイアログ ボックスをカプセル化します。共通のファイル ダイアログ ボックス ファイルを開くファイルの [名前を付けて] ダイアログ ボックス (と他のファイルの選択] ダイアログ ボックス) Windows の標準に一貫性のある方法で実装する簡単な方法を提供します。
提供、コンス トラクターで、「 CFileDialogを使用することができます。 またはダイアログ クラスCFileDialogから派生とお客様のニーズに合うように、コンス トラクターを記述することができます。彼らはCCommonDialogクラスから派生しているためいずれの場合では、これらのダイアログ ボックス標準 Microsoft Foundation クラス] ダイアログ ボックスのように動作します。
CFileDialogオブジェクトを使用するには、まず、 CFileDialogコンス トラクターを使用してオブジェクトを作成します。ダイアログ ボックスが作成された後は、設定または値またはダイアログ ボックスのコントロールの状態を初期化するには、 m_ofn構造体の任意の値を変更できます。M_ofn構造体の型OPENFILENAMEです。詳細についてを参照してください、 、Win32 SDK ドキュメントでOPENFILENAME構造。
ダイアログ ボックスのコントロールを初期化した後、ダイアログ ボックスを表示し、ファイルとパスを入力するユーザーを許可するには、 DoModalメンバー関数を呼び出します。Domodal 関数は、ユーザーが [ok] (IDOK) またはキャンセル (IDCANCEL) ボタンを選択したかどうかを返します。
DoModalがIDOKを返した場合は、 CFileDialogのパブリック メンバー関数の 1 つ、ユーザーが入力する情報を取得するために使用することができます。
Cfiledialog 共有違反、ファイル名の検証、カスタム処理を可能にするいくつかの保護されたメンバーとリスト ボックスの変更通知。これらのプロテクト メンバーは、ほとんどのアプリケーションは、既定の処理が自動的に行われますので、使用する必要はありませんコールバック関数です。標準の仮想関数であるために、これらの関数のメッセージ マップ エントリは必要ありません。
ダイアログ ボックスの初期化中にエラーが発生したかどうかを確認して、エラーについての詳細は、Windows CommDlgExtendedError関数を使用することができます。
CFileDialogオブジェクトの破棄は自動的に処理されます。CDialog::EndDialogをコールする必要はありません。
複数のファイルを選択をユーザーに許可するには、 DoModalを呼び出す前にOFN_ALLOWMULTISELECTフラグを設定します。返される一覧の複数のファイル名に対応する独自のファイル名バッファーを供給する必要があります。これをあなたが割り当てたが、 CFileDialog、構築後、 DoModalを呼び出す前に、バッファーへのポインターでm_ofn.lpstrFileを交換します。さらに、 m_ofn.lpstrFileが指すバッファーにm_ofn.nMaxFileの文字数を設定する必要があります。
CFileDialogでは COMMDLG に依存します。Windows 3.1 以降のバージョンに付属する DLL ファイル。
CFileDialogから新しいクラスを派生する場合は、メッセージを処理するメッセージ マップを使用できます。既定のメッセージ処理を拡張するには、 CWndから派生するクラスを新しいクラスにメッセージ マップを追加、メンバー関数は、新しいメッセージを提供します。ダイアログ ボックスをカスタマイズするには、フック関数を提供する必要はありません。
ダイアログ ボックスをカスタマイズするには、 CFileDialogからクラスを派生、カスタム ダイアログ テンプレートを提供する拡張コントロールからの通知メッセージを処理するメッセージ マップを追加します。任意の未処理のメッセージは、基本クラスに渡す必要があります。
フック関数をカスタマイズすることは必須ではありません。
CFileDialogを使用しての詳細についてを参照してください 共通ダイアログ クラスでVisual の C++ プログラマのガイド。
#include lt;afxdlgs.h>