可是我把Cancel那个按钮给删掉了,好象在Classwizard里就不能重载了OnCancel()了。OnOK()我是已经重载了的。

解决方案 »

  1.   

    重载PreTranslateMessage
    if(pMsg->message==WM_KEYDOWN && pMsg->wParam==VK_ESCAPE)
            return;
      

  2.   

    直接创建一个空的OnCancel()函数
      

  3.   

    同意楼上的说法。
    看来你是VC初学者,
    直接删去按扭是不行的。因为ESC键与CLICK CANCEl都是调用系统的OnCancel()
    现在你CYOUDlg中只有继承CDIalog的oncancel(),所以ESC 导致EXIT,如果你重载了
    这个函数,如:CYOUDlg::OnCancel(){/*nothing*/}这样就可以避免程序被ESC退出。
      

  4.   

    或者再加入一个按钮,ID='IDCANCEL',然后重载对应的函数就方便了。