cfiledialog使用_QDialog

(2) 2024-08-10 12:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
cfiledialog使用_QDialog,希望能够帮助你!!!。

一、示例代码在Microsoft Visual Studio 2013中编译通过,运行正常。

//CFileDialog类

BOOL isOpen = TRUE;        //是否打开(TRUE为打开对话框,FALSE为保存对话框)    


CString defaultDir = _T("C:\\Users\\TF\\Documents");   //默认打开的文件路径    


CString defaultFile = L"test1.txt";         //默认打开的文件名    


CString filter = L"文本(*.txt)|*.txt|所有类型(*.*)|*.*||";   //文件过虑的类型    


CFileDialog openFileDlg(isOpen, NULL, defaultDir + "\\" + defaultFile, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, filter, NULL);


INT_PTR result = openFileDlg.DoModal();//是否选中文件,或取消了选择


if (result == IDOK)


{


CString pathName, fileName,titleName,extName;


pathName = openFileDlg.GetPathName();//得到完整的文件名,包括目录名和扩展名如:c:/test/test1.txt


fileName = openFileDlg.GetFileName();//得到完整的文件名,包括扩展名如:test1.txt


titleName=openFileDlg.GetFileTitle();//得到完整的文件名,不包括目录名和扩展名如:test1


extName = openFileDlg.GetFileExt();// 得到完整的文件扩展名,如:txt


MessageBox(pathName + "\r" + fileName + "\r" + titleName + "\r" + extName);//通过显示,注意几者区别

}

二、MSDN上查到的构造函数

explicit CFileDialog(

    BOOL
bOpenFileDialog,    //显示的窗口,文件打开对话框或文件另存为对话框

    LPCTSTR lpszDefExt =
NULL,    //默认的文件扩展名,会自动追加到文件名后。

    LPCTSTR
lpszFileName = NULL,    //显示在文件名编辑栏的初始文件名。  

    DWORD dwFlags =
OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,    //用来自定义对话框的标志组合(后详)  

    LPCTSTR
lpszFilter = NULL,    //文件筛选(结构见后述)  

    CWnd* pParentWnd =
NULL,    //父窗口指针(通常都NULL) 

    DWORD dwSize = 0,    //The size of the OPENFILENAME structure.(找时间查查OPENFILENAME structure)  

    BOOL bVistaStyle = TRUE);    //显示Vista样式,为TRUE时使用new Vista file dialogs,为FALSE时将使用旧样式dialogs.

示例代码中:

给第1、3、5个参数进行了赋值。而第2、4、6个参数使用了构造函数中的缺省值。没有用到后两个参数

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复