【问题标题】:First click on a control only activates the window and doesn't operate the control第一次点击一个控件只激活窗口,不操作该控件
【发布时间】:2015-11-07 14:17:08
【问题描述】:

当我的应用程序的主窗口不活动并且我单击一个控件时,该控件不会被单击,而是该窗口被激活。这意味着如果另一个应用程序的窗口首先处于活动状态,则需要单击两次才能执行某项操作。

一些控件已经一键响应,但其他控件没有。尤其是菜单和工具栏按钮不会。

如何将其更改为一键式?

【问题讨论】:

  • 你可以添加一个全局鼠标钩子来监听鼠标点击,如果表单当前处于非活动状态,并且点击在其边界内,然后搜索工具条项目以查看点击是否在里面他们的界限。如果是这样,则模拟鼠标单击该项目。我在C# 有一个解决方案,如果有帮助,请告诉我。

标签: .net vb.net winforms


【解决方案1】:

这里有两种可能的解决方案:

1) Tool Strip Container Tools Strip Lost Focus and Double Click

2) http://www.codeproject.com/Questions/122798/WinForm-lost-focus-to-another-application-requires

当菜单关闭时,第二种解决方案似乎具有更好的性能。无论出于何种原因,第一个解决方案往往会在菜单关闭时稍微滞后。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-14
    • 1970-01-01
    • 2011-03-06
    • 2012-08-20
    • 1970-01-01
    • 2021-08-06
    • 1970-01-01
    • 2011-04-16
    相关资源
    最近更新 更多