属性停靠窗口上的 MFC 按键被捕获为其他控件加速器

发布于 2024-12-19 13:47:54 字数 183 浏览 1 评论 0原文

我有一个 Visual C++ 应用程序,其中主框架中有一个 CListCtrl 以及一个带有属性窗口的可停靠窗格。

当我按下“属性”窗口上的“删除”键时,应用程序也将其理解为 CListCtrl 的“删除所选项目”。

其他键也会出现一些类似的行为。

我怎么能说我不希望它也进入 CListCtrl 呢?

I have a Visual C++ application where there are, among other things, a CListCtrl in the Main Frame and a Dockable Pane with a properties Window.

When I press the Delete key on the Properties Window, the application also understands it as "Delete selected item" of the CListCtrl.

Some similar behaviours occur for other keys.

How can I say that I don't want this to go also to the CListCtrl?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

最初的梦 2024-12-26 13:47:55

好吧,我在Mainframe类中做了一个PreTranslateMessage函数,当输入来自Properties Control或其后代时,将HACCCEL当前加速器表放入临时变量中,然后调用父类PreTranslateMessage,最后重新获取原始加速器表在此函数的末尾。

现在,我有另一个问题:这是最好的解决方案吗?在我看来不是这样的!

Ok, I made a PreTranslateMessage function in the Mainframe class, that puts the HACCCEL current accelerator table in a temporary variable when the input comes from the Properties Control or a descendent of it, then call the parent class PreTranslateMessage, and finally retake the original accelerator table in the end of this function.

Now, I have another question: Is this the best solution? Doesn't seem to me it is!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文