我正在使用MFC C ++应用程序,但在尝试在项目中打开另一个对话框时遇到了问题。
在这个小视频I录音机中看到:click here (Youtube)
我的一些代码:
CFindWindow window;
window.DoModal();
这是FindWindow.h
文件:
#pragma once
// CFindWindow dialog
class CFindWindow : public CDialogEx
{
DECLARE_DYNAMIC(CFindWindow)
public:
CFindWindow(CWnd* pParent = NULL); // standard constructor
virtual ~CFindWindow();
// Dialog Data
enum { IDD = IDD_FINDWINDOW_DIALOG };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
DECLARE_MESSAGE_MAP()
};
我不确定你需要什么来帮助我,告诉我,我会为你提供你需要的任何东西。
提前致谢!
答案 0 :(得分:2)
如果没有调试,几乎不可能为您提供解决方案。
如果以前帖子中的以下建议无法帮助您发布重复此行为的应用程序或测试应用程序。
答案 1 :(得分:1)
有时资源编译器不会检测到更改。重建解决方案有助于缓解这种情况。
答案 2 :(得分:0)
您将该代码放在按钮处理程序中。在那里放一个断点,以确保它真的被调用。或者,TRACE宏也有助于记录调试版本的一些输出。只提供了信息(而且视频也没有多大帮助......)很难说出现了什么问题。
答案 3 :(得分:0)
检查是否有其他资源已经与IDD_FINDWINDOW_DIALOG具有相同的值。 检查IDD_FINDWINDOW_DIALOG的源代码并查看ID号,看看是否有其他资源具有相同的ID。
提出一个断点并进入DoModal尝试。
或者将您的代码放在try catch块中,看看是否有例外。
检查点击按钮单击以调用findwindow表单的主窗体是否覆盖了可能阻止查找窗口弹出的任何事件。