【问题标题】:C++ MFC Message handlingC++ MFC 消息处理
【发布时间】:2011-11-04 17:01:58
【问题描述】:

所以我正在制作一个 MFC 应用程序来处理几个不同的消息,并根据处理的消息显示不同的输出。所以现在我有一个可以处理WM_KEYDOWN 消息并显示该消息的输出。现在我也有一个处理WM_RBUTTONDOWN 的设备,我想要它做的是启动我正在制作的 Brick Breaker 游戏。我遇到的问题是,一旦我输入WM_RBUTTONDOWN,我想禁用某些键,这样我就可以控制桨而不调用WM_KEYDOWN

TL:DR 如何在 MFC 中禁用 WM_KEYDOWN中的某些键。

【问题讨论】:

    标签: c++ mfc


    【解决方案1】:

    您可以覆盖 PreTranslateMessage 以在 MFC 进行消息映射转换之前查看并绕过消息。

    【讨论】:

    • 所以真正需要做的是覆盖PreTranslateMessage,然后为左右箭头键的虚拟键类添加一些加速器。
    【解决方案2】:

    您不必在您的应用程序中禁用键。当另一个程序获得焦点时,所有输入都应该转到该程序。

    【讨论】:

      【解决方案3】:

      您需要将您感兴趣的密钥转发给驱动您的对象的代码。

      【讨论】:

        【解决方案4】:

        您不需要禁用键。由您的代码根据应用程序的状态决定是否处理密钥。

        【讨论】:

          猜你喜欢
          • 2014-08-20
          • 1970-01-01
          • 1970-01-01
          • 2011-10-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-06-22
          • 1970-01-01
          相关资源
          最近更新 更多