CFileDialog::DoModal
呼叫這個函式會顯示 Windows 通用檔案對話方塊並讓使用者瀏覽檔案和目錄輸入檔名。
virtual INT_PTR DoModal( );
傳回值
IDOK 或 IDCANCEL。如果 IDCANCEL 傳回,則呼叫 Windows 函式 CommDlgExtendedError 判斷是否發生錯誤。
IDOK 和 IDCANCEL 是表示常數使用者是否選取了 [確定] 或 [取消] 按鈕。
備註
如果您想要將 m_ofn 結構的成員初始設定各種檔案對話方塊中選取,您應該在呼叫 DoModal之前,不過,這樣做,請在 對話方塊在建構物件之後。
例如,在中,如果您要允許使用者選取多個檔案中,以 CFileDialog 類別,的程式碼範例所示 DoModal在呼叫之前設定 OFN_ALLOWMULTISELECT 旗標。
當使用者按一下對話方塊的判斷或取消按鈕或選取 存取的選項從對話方塊的 時,控制項傳回至應用程式。您可以呼叫其他成員函式以取得組態資訊或使用者輸入至 對話方塊。
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);
}
}
需求
Header: afxdlgs.h