对话框的右上角的关闭按钮对应的消息处理函数是什么?
我把对话框的Cancel的处理函数OnCancel()里面的CDialog::OnCanCel()给屏蔽了,
结果那个关闭按钮也没作用了.
   因为如果我部屏蔽CDialog::OnCanCel(),那么按掉ESC键对话框就会关闭,麻烦,
有什么好的解决办法?

解决方案 »

  1.   

    把OnOk();里面的东西也干掉,就OK了。~
      

  2.   

    请问楼主想得到的效果是什么?
    Add Windows Message Handles...的WM_CLOSE是右上角的关闭按钮对应的消息处理函数.
      

  3.   

    程序在你按下enter是找下一个能获得输入焦点的控件 如果没有那么就对ok按钮来处理,即使对话矿上没有ok按钮,也会调用基类的onok()函数来退出,对于cancel也是一样,
    重载oncancel()先对cancel按钮重载函数并是他不做任何事情,然后改变原来cancel按钮的id,对新的id加一个函数比如onmycancel()只要在里面调用基类的onCancel()就能退出了
    CMyDialog::OnCancel()
    {
       //empty
    }//对原来的控件id
    CMyDialog::OnNewCancel()
    {
       CDialog::OnCancel();
    }//对新的控件id
      

  4.   

    重载OnClose,把响应默认OK,CANCEL,里面内容全部添空就可以了