1. 程式人生 > >為CFileDialog類指定一個預設的資料夾

為CFileDialog類指定一個預設的資料夾

CFileDialog類說明 
在MFC中程式設計序,如果想使用選擇檔案對話方塊功能,CFileDialog類是首選。它可以簡便開啟選擇檔案的對話方塊,讓使用者選擇一個或者多個檔案。一般使用時,預設是開啟“我的文件”,使用者不得不使用滑鼠再次點選其他的資料夾。假如,我們想讓CFileDialog開啟自己指定的資料夾目錄呢? 又如何實現呢。本文將告訴你如何實現這種功能。 


CFileDialog使用例項 
摺疊展開 C/C++ Code 
CString strFile;     
CString defExe("dat");     
CString defFileName("*.dat");     
CString defFilter("資料文件(*.dat)|*.dat|所有檔案(*.*)|*.*|");     
CFileDialog dlg(true,defExe,defFileName,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,defFilter);     
dlg.m_ofn.lpstrInitialDir= "c:\\windows\\"; //指定資料夾     
if(dlg.DoModal()==IDOK)     
{     
   strFile = dlg.GetPathName();     
   MessageBox(strFile);     
}    


在上述程式碼中,我們指定了一個預設的資料夾“C:\windows”,當你執行上段程式碼時,檔案選擇對話方塊就會開啟你設定的預設資料夾;如果此資料夾不存在,就會開啟它自己預設的資料夾,比如“我的文件”。 


上述程式碼中,defExe是定義了預設開啟的檔案型別(副檔名),defFileName則定義了開啟的檔名,defFilter是過濾檔案型別。 當你點選“確定”,就會進入if語句中,strFile則得到你選擇的檔案全部路徑,如 “C:\windows\system32\cmd.exe”等。