win32 c ++在子类化的编辑控件中检测'enter'?

Kai*_*aan 5 c++ winapi controls edit button

基本上我想要一个Enter来触发一个消息,当编辑控件聚焦并且用户按下回车时我可以捕获该消息.所有在线解决方案似乎都是关于子类化的,但我想知道是否还有另一种方法呢?

例如,我的按钮具有标识符ID_BUTTON_SEND.这是我的想象;

case WM_COMMAND:
     switch (LOWORD(wParam))
            case ID_BUTTON_SEND
                 if ('enter was pressed') 
                      do this
                 else
                      default
Run Code Online (Sandbox Code Playgroud)

...你明白了:)我已经阅读了 http://support.microsoft.com/kb/102589, 但坦率地说,选项1对我来说没有多大意义.

干杯

kel*_*ogs 3

捕获此问题的最佳方法是在调用 TranslateMessage 之前。因此,如果使用 MFC,请重写 CWnd::PreTranslateMessage。如果仅使用 Win API,则只需在调用 TranslateMessage 之前检查消息泵中消息包含的内容即可。