jjzjj

CFileDialog

全部标签

windows - CFileDialog - 选定的过滤器和 "Hint"显示所有文件

我有CFileDialog并为其设置了过滤器(文本文件*.txt)。当它打开时,我只看到TXT文件,没错。但!当我在文件名中输入文本时,提示(在文件名字段下)显示所有文件(具有任何扩展名的文件)。某些标志可以改变这种行为吗?我希望强制提示仅显示TXT文件。...CFileDialogf(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_NOCHANGEDIR,_T("Textfiles(*.txt)|*.txt|Allfiles(*.*)|*.*||"));if(f.DoModal()!=IDOK)return;... 最佳答案

c++ - CFileDialog 延迟崩溃

我在基于对话框的MFC应用程序中添加了一个“打开文件”对话框。现在,在通过按下“打开”或“取消”按钮关闭打开的文件对话框后整整一分钟(!),我的应用程序崩溃了。当它崩溃时,输出中会发生以下情况:1)一堆Windows线程正在退出;2)正在抛出一堆COM异常(0x80010108“调用的对象已与其客户端断开连接”和0x800401FD“对象未连接到服务器”);3)最后,出现了一个未处理的异常:0xC0000005:访问冲突读取位置0xfeeefeee,调用堆栈指向ole32.dll。说我很困惑是轻描淡写的说法。调用对话框的代码如下:CFileDialogfileDlg(TRUE,_T("

windows - 使用 CFileDialog::AddCheckButton 失败

好的,我正在尝试使用CFileDialog::AddCheckButton。函数调用成功,我可以看到新的复选框。我看不到任何事件,虽然我可以覆盖OnInitDialog,但忽略覆盖OnOK。我不确定我做错了什么://标题classCTPSaveDialog:publicCFileDialog{DECLARE_DYNAMIC(CTPSaveDialog)staticconstCStringCTPSaveDialog::m_cstrFilter;public:BOOLm_bForce;CTPSaveDialog(LPCTSTRlpszDefExt=NULL,LPCTSTRlpszFileN

c++ - CFileDialog 实例化的问题

我正在遵循CFileDialog的定义,但VS2013仍然告诉我没有可用于我传入的参数的构造函数。我的代码:CFiletheFile;charstrFilter[]={"TXTFiles(*.txt)|*.txt|AllFiles(*.*)|*.*||"};CFileDialogfDlg=CFileDialog(TRUE,".txt",NULL,0,strFilter);产生的错误:1IntelliSense:noinstanceofconstructor"CFileDialog::CFileDialog"matchestheargumentlistargumenttypesare:(

c++ - 为什么 CFileDialog::GetNextPathName 在文件路径很长时不起作用?

使用CFileDialog类,我选择了放置在一个长路径目录中的多个文件。当我只选择一个或两个文件时就可以了;但是当我同时选择三个文件时,它只返回第三个文件路径的一部分。(看起来可能限制为512个字符)我该如何解决这个问题? 最佳答案 MFC使用大小为_MAX_PATH的默认缓冲区,这就是您看到该行为的原因。查看dlgfile.cpp以了解CFileDialog::CFileDialog的实现,您将看到m_ofn.lpstrFile和m_ofn.nMaxFile正在设置。如果需要,您可以指定更大的缓冲区。在调用DoModal之前,您可

windows - CFileDialog::OnInitDialog() 不调用

我正在使用从CFileDialog扩展而来的自定义文件对话框。问题是,OninitDialog()不会在DoModal()之前被调用。我在OninitDialog()中自定义了CFileDialog。我在Win7操作系统上使用VS2012。我无法找出问题所在。 最佳答案 我今天刚遇到同样的问题;我想我找到了一个有效的解决方案,在你的类的构造函数中设置m_bVistaStyle=FALSE;这样做之后,我得到了OnInitDialog并且我能够很好地自定义这个对话框。CMyOpenDlg::CMyOpenDlg(LPCTSTRlpsz

c++ - 为什么每次使用 CFileDialog 时都会出现异常?

每当我在调试器下运行我的应用程序时,我在使用CFileDialog浏览要打开的文件时遇到以下异常First-chanceexceptionat0x769db9bcinMyApp.exe:0x000006BA:TheRPCserverisunavailable.First-chanceexceptionat0x74e8cd99inMyApp.exe:0xC0020043:AninternalerroroccurredinRPC.MyApp.exehastriggeredabreakpoint在Windows764位上使用VS2008会发生这种情况,在XP下不会发生同样的事情。调用堆栈上没

c++ - 在 Windows 7 中显示 XP 风格的 CFileDialog

我想在Windows7中显示CFileDialog,如下图所示。根据msdnifOFN_ENABLETEMPLATEissetandOFN_EXPLORERflagisnotset,thesystemusesthetemplatetocreateanold-styledialogboxthatreplacesthedefaultdialogbox.但即使在这样做之后,我得到的也是这样的。请帮忙! 最佳答案 试试这个:CFileDialogfd(1,0,0,0,0,0,0,FALSE);fd.m_ofn.lStructSize=siz

4.使用CFileDialog打开文件对话框,获得文件路径 -windows编程

引言:没想到2022年还有很多工业软件公司依然使用MFC,微软也一直在更新MFC的库,这次使用MFC封装的CFileDialog类,写一个获得选定文件路径,名称,扩展名的程序。 个人技术博客(文章整理+源码):https://zobolblog.github.io/LearnWinAPI/最终效果:   1.CFileDialog的使用CFileDialog是MFC对windowsapi的FileDialog的简单封装,增加了一些接口,他的构造函数只有一个: explicitCFileDialog(BOOLbOpenFileDialog,LPCTSTRlpszDefExt=NULL,LPCTS

4.使用CFileDialog打开文件对话框,获得文件路径 -windows编程

引言:没想到2022年还有很多工业软件公司依然使用MFC,微软也一直在更新MFC的库,这次使用MFC封装的CFileDialog类,写一个获得选定文件路径,名称,扩展名的程序。 个人技术博客(文章整理+源码):https://zobolblog.github.io/LearnWinAPI/最终效果:   1.CFileDialog的使用CFileDialog是MFC对windowsapi的FileDialog的简单封装,增加了一些接口,他的构造函数只有一个: explicitCFileDialog(BOOLbOpenFileDialog,LPCTSTRlpszDefExt=NULL,LPCTS
12