cfiledialog檔案選擇對話方塊的使用:首先構造乙個物件並提供對應的引數,建構函式原型例如以下:
cfiledialog::cfiledialog( bool bopenfiledialog, lpctstr lpszdefext = null, lpctstr lpszfilename = null, dword dwflags = ofn_hidereadonly | ofn_overwriteprompt, lpctstr lpszfilter = null, cwnd* pparentwnd = null );引數意義例如以下:
bopenfiledialog 為true則顯示開啟對話方塊,為false則顯示儲存對話檔案對話方塊。
lpszdefext 指定預設的副檔名。
lpszfilename 指定預設的檔名稱。
dwflags 指明一些特定風格。
lpszfilter 是最重要的乙個引數,它指明可供選擇的檔案型別和對應的副檔名。引數格式如:
"chart files (*.xlc)|*.xlc|worksheet files (*.xls)|*.xls|data files (*.xlc;*.xls)|*.xlc; *.xls|all files (*.*)|*.*||";檔案型別說明和副檔名間用 | 分隔,同種型別檔案的副檔名間能夠用 ; 切割,每種檔案型別間用 | 分隔,末尾用 || 指明。
pparentwnd 為父窗體指標。
cstring cfiledialog::getpathname( ) 得到完整的檔名稱,包含資料夾名和副檔名如:c:/test/test1.txt
cstring cfiledialog::getfilename( ) 得到完整的檔名稱,如:test1
cstring cfiledialog::getextname( ) 得到完整的副檔名,如:txt
cstring cfiledialog::getfiletitle ( ) 得到完整的檔名稱,包含資料夾名和副檔名如:test1.txt
position cfiledialog::getstartposition( ) 對於選擇了多個檔案的情況得到第乙個檔案位置。
cstring cfiledialog::getnextpathname( position& pos ) 對於選擇了多個檔案的情況得到下乙個檔案位置,並同一時候返回當前檔名稱。但必須已經呼叫過position cfiledialog::getstartposition( )來得到最初的position變數。
vc++ cfiledialog 讀取多個檔案
dlg.m_ofn.lpstrtitle="請載入相關圖層";
//最多能夠開啟100個檔案
dlg.m_ofn.nmaxfile = 100 * max_path;
dlg.m_ofn.lpstrfile = new tchar[dlg.m_ofn.nmaxfile];
zeromemory(dlg.m_ofn.lpstrfile, sizeof(tchar) * dlg.m_ofn.nmaxfile);
//顯示檔案對話方塊,獲得檔名稱集合
int retval = dlg.domodal();
if(retval==idcancel)
return false;
position pos_file;
pos_file = dlg.getstartposition();
carrayary_filename;
while(pos_file != null)
ary_filename.add(dlg.getnextpathname(pos_file));
//依據副檔名讀取相關檔案
如何使用CFileDialog
cfiledialog的語法 cfiledialog bool bopenfiledialog,lpctstr lpszdefext null,lpctstr lpszfilename null,dword dwflags ofn hidereadonly ofn overwriteprompt,l...
如何使用CFileDialog
cfiledialog建構函式如下 cfiledialog bool bopenfiledialog,lpctstr lpszdefext null,lpctstr lpszfilename null,dworddwflags ofn hidereadonly ofn overwriteprompt...
CFileDialog使用簡介
cfiledialog bool bopenfiledialog,true則顯示開啟檔案對話方塊,false則顯示儲存檔案對話方塊。lpctstr lpszdefext null,指定預設的副檔名。lpctstr lpszfilename null,指定預設的檔名。dword dwflags ofn...