CFileDialog::DoModal
Chiamare la funzione per visualizzare la finestra di dialogo File comuni di Windows e consente all'utente ai file e le directory di esplorazione e per immettere un nome file.
virtual INT_PTR DoModal( );
Valore restituito
IDOK o IDCANCEL.Se IDCANCEL viene restituito, chiamare la funzione di Windows CommDlgExtendedError per determinare se si è verificato un errore.
IDOK e IDCANCEL sono costanti che indicano se l'utente ha scelto OK o Annulla.
Note
Se si desidera inizializzare le varie opzioni della finestra di dialogo File impostando i membri della struttura m_ofn, è necessario eseguire questa operazione prima di chiamare DoModal, ma dopo che l'oggetto finestra di dialogo.
Ad esempio, se si desidera consentire all'utente a più file selezionati, impostare il flag OFN_ALLOWMULTISELECT chiamare DoModal, come illustrato nell'esempio di codice in classe di CFileDialog.
Quando l'utente fa clic su OK o Annulla i pulsanti della finestra di dialogo, oppure selezionare l'opzione o i menu del controllo della finestra di dialogo, il controllo viene restituito all'applicazione.È quindi possibile chiamare le funzioni membro per recuperare le impostazioni o informazioni gli input utente nella finestra di dialogo.
DoModal è una funzione virtuale sottoposta a override da classe CDialog.
Esempio
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);
}
}
Requisiti
Header: afxdlgs.h