MFC 開啟檔案對話方塊

2021-06-29 01:35:14 字數 1126 閱讀 2558

cfiledialog類封裝了windows常用的檔案對話方塊。常用的檔案對話方塊提供了一種簡單的與windows標準相一致的檔案開啟和檔案存檔對話方塊功能。

cfiledialog的語法:

第乙個引數 bopenfiledialog為true或false。true為開啟檔案;false為儲存檔案。 

第二個引數 lpszdefext為預設的副檔名。 

第三個引數 lpszfilename為顯示在檔名組合框的編輯框的檔名,一般可選null 

第四個引數 dwflags為對話方塊風格,一般為ofn_hidereadonly | ofn_overwriteprompt, 即隱藏唯讀選項和覆蓋已有檔案前提示。

ofn_allowmultiselect:

允許選擇多個檔案

ofn_createprompt:

如果輸入的檔名不存在,則對話方塊返回詢問使用者是否根據次檔名建立檔案的訊息框

ofn_filemustexist:

只能輸入已存在的檔名

ofn_forceshowhidden:

可以顯示隱藏的檔案

ofn_noreadonlyreturn:

不返回唯讀檔案

ofn_overwriteprompt:

儲存的檔案已存在時,顯示檔案已存在的資訊

第五個引數 lpszfilter為下拉列表樞中顯示檔案型別。 

lpszfilter 是最重要的乙個引數,它指明可供選擇的檔案型別和相應的副檔名。引數格式如:

"jpg files (*.jpg)|*.jpg|all files (*.*)|*.*||";檔案型別說明和副檔名間用 | 分隔,同種型別檔案的副檔名間可以用 ; 分割,每種檔案型別間用 | 分隔,末尾用 || 指明。

因為vs 2005之後專案使用的是unicode字符集,所以如果直接強制型別轉換為lpctstr, 執行會發現檔案型別處顯示為亂碼,可以在「專案-屬性」中將"unicode字符集"換成"多位元組字符集"就行了,也可以將文字內容放在_t()裡面,不變字符集

第六個引數 pparentwnd為父視窗指標, 一般可選null。

下面給出示例**:

void cmydialog:

:onbnclickedopennc(

)else}

MFC開啟檔案對話方塊

摘自msdn cfiledialog dlgfile true cstring filename const int c cmaxfiles 100 const int c cbbuffsize c cmaxfiles max path 1 1 dlgfile.getofn lpstrfile fi...

MFC開啟檔案對話方塊

僅為學習用!文章出處 cfiledialog類封裝了windows常用的檔案對話方塊。常用的檔案對話方塊提供了一種簡單的與windows標準相一致的檔案開啟和檔案存檔對話方塊功能。cfiledialog的語法 第乙個引數 bopenfiledialog為true或false。true為開啟檔案 fa...

MFC開啟檔案對話方塊

cfiledialog類封裝了windows常用的檔案對話方塊。常用的檔案對話方塊提供了一種簡單的與windows標準相一致的檔案開啟和檔案存檔對話方塊功能。cfiledialog的語法 第乙個引數 bopenfiledialog為true或false。true為開啟檔案 false為儲存檔案。第二...