hur.cn - 华软网

 热门搜索

子窗口的button的click事件没响应

  作者:未知    来源:网络    更新时间:2011/5/16
    新建一个mfc的对话框程序。主对话框记为a。。新建一个对话框记为b  , id:IDD_DIALOG1   。。

在a窗口里,写入以下代码
        CDialog dlg(IDD_DIALOG1,0);
dlg.DoModal();

在b窗口里,即子窗口里 双击 确定 按钮。。提醒这是一个新的资源。。问是否要创建新的类。。。

我就新建了一个类。。

然后在双击 确定 按钮。。。就能够编辑代码

代码以下:
void CAboutDlg::OnBnClickedOk()
{
// TODO: 在此增加控件通知措置惩罚程序代码
MessageBox("a");
//CDialogEx::OnOK();
}

结果:
    按主窗口a的确定按钮 能够 弹出 子窗口b。。

    然后再按 子窗口b的确定按钮。。为什么 没有提醒 MessageBox啊。。
    而且。。我下了断点。。也没有经过
    MessageBox啊。。
    请问这是那里错了。。
    列位大大。。谢啦。。
    这问题困扰我。一天了啊。。
---华软 网友回答---
大家看看啊。。。谢啦啊。
---华软网友回复---
Caboutdlg是MFC工程建立时向导生成的类,用于产生关于对话框,OnBnClickedOk的位置加错了。
---华软网友回复---
1:除非是就为了显示对话框,否则要生成新类,规范的CDialog除规范的操作外什么多不做,一般不能知足需求
2 如2楼所说,加的位置不对,也能够重载OnOK来措置惩罚
---华软网友回复---
新建对话框应该为这个对话框做一个类
你把这个对话框的按钮消息连到CAboutDlg里怎么会有效果
---华软网友回复---
确实。。我实验了。。必需用对话框类生成对象才行。。

用cdialog 创建一个联系关系对话框对象不能响应事件啊。。这是为什么啊。。

就是如果。。对话框类为  CTest ....资源为  IDD_DLG_TEST

必需这样  CTest test;

---华软网友回复---
test.DoModal()才行。。
。。
用Cdialog dlg(IDD_DLG_TEST,0);
dlg.DoModal()的。。不行啊      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。