通用对话框专题之文件对话框

来源:互联网 发布:做淘宝如何找货源 编辑:程序博客网 时间:2024/06/05 06:26

最近有一股小小冲动,干脆就来写一系列专题吧.

第一个专题就先选通用对话框吧,这个很使用的,大部分人编程都会遇到使用它的,好,废话少说,下面就演示文件对话框的使用了. 

void CComDialogDlg::OnBtnFileDlg()
{
 // TODO: Add your control notification handler code here
 UpdateData();

 CFileDialog dlg(TRUE/*TRUE是打开,FALSE是保存*/, NULL,NULL,
  OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT ,
  "Text File (*.txt)|*.txt|All Files (*.*)|*.*||",this);
 char szFilePath[MAX_PATH] = {0};
 

 //dlg.m_ofn.lStructSize = sizeof(OPENFILENAME);  结构大小
 //dlg.m_ofn.hwndOwner = m_hWnd;     拥有者窗口句丙
 //dlg.m_ofn.hInstance       不支持
 //dlg.m_ofn.lpstrFilter = "Text File (*.txt)|*.txt|All Files (*.*)|*.*||";
 //dlg.m_ofn.lpstrCustomFilter     不支持
 //dlg.m_ofn.nMaxCustFilter      不支持
 //dlg.m_ofn.nFilterIndex = 2;     文件类型索引
 dlg.m_ofn.lpstrFile = szFilePath;    //文件BUFFER
 dlg.m_ofn.nMaxFile = MAX_PATH;     //BUFFER大小
 //dlg.m_ofn.lpstrFileTitle = NULL;    接收选择的文件名、扩张名的缓存,可以是NULL
 //dlg.m_ofn.nMaxFileTitle ;      lpstrFileTitle指向的缓存大小,如果lpstrFileTitle = NULL,该参数忽略,
 //dlg.m_ofn.lpstrInitialDir = "c:";    初始目录
 //dlg.m_ofn.lpstrTitle = "Hello World!" ;  对话框显示的时候标题栏的名称
 //dlg.m_ofn.Flags = OFN_XXXX;     对话框显示标志,OFN_ALLOWMULTISELECT标志允许多选
 
 
 if( IDOK == dlg.DoModal() )
 {
  //dlg.GetPathName( );   得到完整的文件名,包括目录名和扩展名如:c:/1.txt
  //dlg.GetFileName( )   得到完整的文件名,包括扩展名如:1.txt
  //dlg.GetExtName( )    得到完整的文件扩展名,如:txt
  //dlg.GetFileTitle ( )   得到完整的文件名,不包括目录名和扩展名如:1
  //dlg.GetStartPosition( )  对于选择了多个文件的情况得到第一个文件位置
  //dlg.GetNextPathName( pos ) 得到下一个文件位置,并同时返回当前文件名
  //m_strString = szFilePath;  //通过BUFFER直接得到
  m_strString = dlg.GetPathName( );
 }

 UpdateData(FALSE);
}

 

是不是很爽啊! 再告诉你个秘密,下回贴的是文件夹对话框了! 注意顶哦!呵呵.

原创粉丝点击