为什么我的程序一运行后,按下Enter键,程序退出!该如何解决!

解决方案 »

  1.   

    是对话框程序吧?把OnOK里面的代码注释掉或改掉
      

  2.   

    Dialog的程序?
    1、重载OnOK和OnCancel,函数为空就行了
    2、响应消息WM_CLOSE关闭对话框AfxPostQuitMessage(0)
      

  3.   

    如果是对话框的话,InitInstance中的return false改为RETURN TRUE。
      

  4.   

    其实,按Esc是不是也可以退出。重写OnOK(),按Entry不会退出程序了。
      

  5.   

    把确定按钮的default button属性去掉就可以了!
      

  6.   

    按Esc也退出,我是自己添加的按钮没onOk()涵数!我把InitInstance中的return false改为RETURN TRUE 还是不行!
      

  7.   

    重载wm_char消息,然后处理vk_return健值即可
      

  8.   

    "按Esc也退出,我是自己添加的按钮没onOk()涵数"
    你没改过OnOK和OnCancel函数吧,所以默认的Enter键就调用了缺省的OnOK--退出,Escape也一样退出。
    你可以把你的某个按钮设为Default Button;或者重写OnOK
      

  9.   

    在对话框下,重载对话框类的OnOK()肯定可以的。
    同样重载OnCancel()就实现不能接ESC键退出
      

  10.   

    我试过重载OnOk()和OnCancel(),问题是解决了!但按我自己加的“退出程序”按钮和标题栏的关闭,程序没反应!郁闷~~~
    我该怎么办!
      

  11.   

    在你自己的"退出程序"按钮里最后加一句CDialog::OnOK();
      

  12.   

    在退出程序里加了一句CDiglog::OnOK()问题解决!但为什么不加,用sendmessage(WM_ClOSE),则程序没反应想知道原因!
      

  13.   

    因为sendmessage(WM_ClOSE),经过一系列消息处理,最终还是调用CYourDialog:OnOk()来执行对话框的关闭,而你已经修改了OnOK()使之不能实现退出程序的功能了,所以sendmessage(WM_ClOSE)不能关闭程序了。