有没有一种方法可以确保所有WM_KEYDOWN事件都进入我的主窗口,而无论谁有焦点?这主要是针对全局对象(如Delete)和热键(如CTRL A和CTRL S)。问题是,如果另一个控件具有焦点,则所有这些控件都会停止工作。可能有比将它们放入主窗口的WM_KEYDOWN事件更好的方法吗?

谢谢

最佳答案

是的,您可以在消息循环中进行操作。在传统消息循环调用TranslateAccelerator()的确切位置。它执行相同的操作,捕获快捷键并将其转换为WM_COMMAND消息。典型的类库通过“ PreProcessMessage”方法实现此目的。

09-26 18:15