首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >自定义CFileDialog错误消息

自定义CFileDialog错误消息
EN

Stack Overflow用户
提问于 2011-08-03 13:58:37
回答 2查看 921关注 0票数 1

如果有一种自定义CFileDialog错误消息的方法,那就太好了。

例如,在文件名编辑框中输入无效驱动器将导致如下所示的错误消息。

我想在这里显示一个不同的错误。如果不对CFileDialog进行子类化,是否可能

如果对话框返回,而不是显示错误.,也很好。

下面是代码片段:

代码语言:javascript
复制
CFileDialog dlgFile( TRUE, 0, 0,  OFN_HIDEREADONLY | OFN_ALLOWMULTISELECT, szFilters, 0, 0, 0 );
dlgFile.m_ofn.FlagsEx |= OFN_EX_NOPLACESBAR;
dlgFile.m_ofn.lpstrTitle= csTitle;
dlgFile.m_ofn.lpstrInitialDir = NULL;

const int nMaxFiles = 2512;
const int nBuffSize = ( ( nMaxFiles * ( MAX_PATH + 1 ) ) + 1 ) * sizeof( TCHAR );
dlgFile.GetOFN().lpstrFile = new TCHAR[ nBuffSize ];
::ZeroMemory( dlgFile.GetOFN().lpstrFile, nBuffSize );
dlgFile.GetOFN().nMaxFile = nBuffSize;
if( dlgFile.DoModal() == IDOK )
{
   ...
   ...
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-08-03 14:09:40

如果只需要修改对话框,就可以安装带有WH_CBT的钩子WH_CBT。

票数 2
EN

Stack Overflow用户

发布于 2011-08-03 14:36:16

刚刚发现,将OFN_NOVALIDATE设置为m_ofn.Flags会删除此验证并从对话框中返回,而不会显示该警告。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6927650

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档