窗口句柄为空了

今天使用新对话框中的复选框函数,一直出错,句柄一直为空,原因:

生成一个模态对话框我们这样写:

CDiaolg mydlg;

if(mydlg.DoModal()==IDOK)

{

  ..............

}

if成立的条件是OnOK()被调用即默认的确定按钮被点击了,想想看,这时对话框已经关闭了!虽然mydlg类可能依然存在,但对应的m_hWnd值已经为空了,这可能是框架为我们做了些工作,这里也显示了窗口类与窗口的联系与区别了,而且窗口不再使用了,释放窗口资源句柄也是合情合理

如果你想在点击确定按钮时干点什么,你可以到mydlg的成员函数中去,而不应该在上面的"......."的位置做.

...中的对对话框的所有操作都是错误。

如Cbutton的getcheck函数。

应该使用DoDataExchange函数中,

DDX_Control(pDX, IDC_CHECK1, m_bCK1);

 m_b1 = m_bCK1.GetCheck();
 在......部分使用bool型变量代替新对话框中获取的Cbutton变量 m_bCK1

参考:http://blog.csdn.net/zipper9527/article/details/4188247

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值