首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DialogBoxParam和GetOpenFileName

DialogBoxParam和GetOpenFileName
EN

Stack Overflow用户
提问于 2012-01-09 09:54:43
回答 1查看 685关注 0票数 0

首先,这是我的配置:

代码语言:javascript
复制
VS2010/Debug/C++ Win32 Project/Vista Home Premium

在窗口(CreateWindow)中通过按钮(CreateWindow)调用GetOpenFileName没有任何问题:打开对话框工作正常,我可以单击、导航到另一个文件夹等。

现在,我用一个DialogBoxParam替换我的CreateWindow (它应该在幕后调用CreateWindow ),用相同的(DLGPROC)WndProc并调用相同的GetOpenFileName。在这里,打开对话框表现得很奇怪:看起来只有鼠标双击才能工作(=填充ofn.lpstrFile并关闭打开对话框)。无法单击“打开”和“取消”按钮,并且无法导航。

以前有没有人经历过这种情况?任何已知的导致打开对话框“冻结”的原因。无论是否属于父级(ofn.hwndOwner = hwnd; ofn.hwndOwner = NULL;)都会出现同样的问题。

感谢N

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-09 10:32:23

你写了

具有相同(DLGPROC)WndProc的

那是你的虫子。对话过程和窗口过程不是一回事。它们遵循不同的规则,如果你遵循WndProc规则,而你应该遵循DlgProc规则,那么就会发生不好的事情。

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

https://stackoverflow.com/questions/8783157

复制
相关文章

相似问题

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