【问题标题】:Ensure all key events get sent to main window?确保所有关键事件都发送到主窗口?
【发布时间】:2010-08-15 13:59:11
【问题描述】:

有没有办法确保所有 WM_KEYDOWN 事件都能进入我的主窗口,而不管谁有焦点?这主要是针对全局的东西,比如删除,以及热键,比如 CTRL A 和 CTRL S。问题是如果另一个控件有焦点,所有这些都停止工作。有没有比将它们放在我的主窗口的 WM_KEYDOWN 事件中更好的方法?

谢谢

【问题讨论】:

    标签: c++ c winapi


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 2011-11-27
      • 2014-03-19
      • 2019-05-15
      • 1970-01-01
      • 2012-06-30
      • 2014-10-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多