如题 当焦点在edit框时按回车不能响应wm_keydown消息,有人碰到过这个问题吗?如何解决?(edit为Create出来的)

解决方案 »

  1.   

    CEdit为什么收不到Enter键的WM_KEYDOWN
    edit的属性要设置为multiline和want return,否则回车消息就被dialog拦截掉了。
    可以重载PreTranslateMessage函数 
    BOOL CMyEdit::PreTranslateMessage(MSG* pMsg) 

    if( pMsg->message == WM_KEYDOWN && pMsg->wParam == VK_RETURN ) 

    .......... 

    return CEdit::PreTranslateMessage(pMsg); 
    }
      

  2.   

    一楼你好,我在网上找的也差不多是重写PreTranslateMessage,但现在是我要界面是主界面DoModal出来的,而且主窗口已经重写过了PreTranslateMessage,二级界面的PreTranslateMessage进不去,不知有什么好的方法解决?