标题:解决非模态对话框多次点击,重复弹出问题
最近自学了一下非模态对话框,跟大家分享一下,不喜勿喷,有问题可以留言,必知无不言,言无不尽。
1、主对话框(.h)类中添加bool m_OpenHave; 变量可自己命名
2、主对话框(.cpp)构造函数中初始化
m_OpenHave变量为false;
m_OpenHave=false;
3、在主对话框(.cpp)Button事件中添加判断代码:
If(m_OpenHave){return;}
并在执行非模块代码后面将m_OpenHave设置为true,代表已经点击。
m_OpenHave=true;
记得在主对话框中加上模块对话框头文件
#include "非模块对话框头文件"
4、非模态对话框(.h)类外添加class 主类;告诉非模块对话框类有这么一个类。
class 主对话框类名;
并在类内部添加代码,
如:*CHua m_Hua;
5、非模态对话框(.cpp)中添加主对话框头文件。
#include "主对话框头文件"
并在非模态对话框类构造函数中添加代码,
如:m_Hua=(CHua) pParent;*
最后在非模块对话框中OnClose()中添加
m_Hua->m_OpenHave=false;