文件對話框的創建

文件對話框分爲打開文件對話框和保存文件對話框,
打開文件對話框用於選擇要打開的文件的路徑,保存文件對話
框用來選擇要保存的文件的路徑。


CFileDialog 類的
造函數
原型如下:
explicit CFileDialog(
BOOL bOpenFileDialog,      //    指定文件對話框的類型。 TRUE :打開文件對話框,else:保存文件對話框
LPCTSTR lpszDefExt = NULL,          //默認的文件擴展名

LPCTSTR lpszFileName = NULL, // 如果爲 NULL,則不顯示初始文件名。
DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
LPCTSTR lpszFilter = NULL, //文件過濾器
CWnd* pParentWnd = NULL,
DWORD dwSize = 0,
BOOL bVistaStyle = TRUE
);


文件對話框實例
1.創建一個基於對話框的 MFC 應用程序工程, 名稱設爲―OpenTest



2.修改主對話框 IDD_OPENTEST_DIALOG 的模板,刪除自動生成的―TODO: Place
dialog controls here.‖
靜態文本框,添加兩個編輯框, ID 分別爲 IDC_OPEN_EDIT IDC
_SAVE_EDIT
,再添加兩個按鈕, ID 分別設爲 IDC_OPEN_BUTTON IDC_SAVE_BUTT
ON
Caption 分別設爲打開保存。按鈕 IDC_OPEN_BUTTON 用於顯示打開文件對話
框,編輯框
IDC_OPEN_EDIT 顯示在打開文件對話框中選擇的文件路徑。按鈕 IDC_SAVE
_BUTTON
用於顯示保存文件對話框,編輯框 IDC_SAVE_BUTTON 顯示在保存文件對話框
中選擇的文件路徑。


3.添加點擊消息處理函數


1. void CExample17Dlg::OnBnClickedOpenButton()
2. {
3. // TODO: Add your control notification handler code here
4. // 設置過濾器
5. TCHAR szFilter[] = _T("文本文件(*.txt)|*.txt|所有文件(*.*)|*.*
||");
6. // 構造打開文件對話框7. CFileDialog fileDlg(TRUE, _T("txt"), NULL, 0, szFilter, thi
s);
8. CString strFilePath;
9.
10. // 顯示打開文件對話框
11. if (IDOK == fileDlg.DoModal())
12. {
13. // 如果點擊了文件對話框上的“打開”按鈕,則將選擇的文件路徑顯示到編
輯框裏
14. strFilePath = fileDlg.GetPathName();
15. SetDlgItemText(IDC_OPEN_EDIT, strFilePath);
16. }
17. }


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章