ファイル選択ダイアログのフィルタ

[戻る]
けん★ 2001/11/27(火) 09:30:03
MFCのダイアログベースの画面でボタンを押下するとファイル選択ダイアログが
表示されるプログラムを作成中なのですが、
ファイル選択ダイアログに表示されるファイルの種類をフィルタしたいのです。
MSDN、参考書等で調べては見たのですが、記述内容があまりにもわかりにくく、
理解できませんでした。
どうかご指導願えませんでしょうか?

CFileDialog を使用しています。

よろしくお願いいたします。

ひでろう 2001/11/27(火) 11:48:22
テキストファイル(.txt)の抽出例です。
参考にして下さい。


    CFileDialog    dlgFile(TRUE, ".txt", NULL,
                       OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
                       "テキストファイル (*.txt)|*.txt|All Files (*.*)|*.*||" );
    if (dlgFile.DoModal() == IDOK){    //"開く"ボタン押下時
        //選択したファイル名(パス付き)取得 */
        CString GetFileName = dlgFile.GetPathName();
    }
    else{    //"キャンセル"ボタン押下時
        //キャンセル時の処理
    }

noe: 2001/11/27(火) 12:04:12
CFileDialogコンストラクタの5番目の引数がフィルタです。

CFileDialog dlg(
        TRUE,
        NULL,
        NULL, 
        OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
        "text (*.txt)|*.txt|All Files (*.*)|*.*||",
        this
);

[ファイルの種類]に表示される説明|表示したいファイルの拡張子|
がひとかたまりで、上のように複数繋げる事もできます。

# 学校では「最後にもうひとつ | を付ける」って習ったけど
# 今とあるページで改めて調べてみたら付いてないや・・・どうなんだろ

noe: 2001/11/27(火) 12:05:07
被りましたね(汗

けん★ 2001/11/27(火) 13:14:08
[[解決]]
上記のソースでバッチリOKでした!!
おかげさまでたすかりました。
ひでろうさんnoeさんありがとうございました。

けん★ 2001/11/27(火) 13:16:03
[[解決]]
上記のソースでバッチリOKでした!!
おかげさまでたすかりました。
ひでろうさんnoeさんありがとうございました。

古いスレッドには追加発言できません。