以不可见的形式按下f1键

本文关键字:f1 | 更新日期: 2023-09-27 18:27:41

我不得不将Windows表单应用程序中的启动表单设置为对用户完全不可见,然后处理f1按键事件。

我使用以下代码将表单设置为不可见:

protected override void SetVisibleCore(bool value)
{
    base.SetVisibleCore(false);
}

然后我注意到HelpRequestedEvent不再被调用。。。所以下面的代码永远不会被调用。。。

this.HelpRequested += (sender, eventArgs) => { MessageBox.Show("Hi"); };

上面的代码是在表单的构造函数中添加的。我现在正试图让表单完全不可见(就像SetCoreVisibility的重写版本一样),并处理这个HelpRequested事件,有办法做到这一点吗?

以不可见的形式按下f1键

您可以使用计时器并检查键盘是否存在F1:

void Timer_Tick(object sender, EventArgs e)
{
    if (Keyboard.IsKeyDown(Key.F1))
    {
        // do your stuff..
    } 
}

为了在WinForms程序中工作,您需要包括对"PresentationCore"answers"WindowsBase"的引用,还需要包括using System.Windows.Input;

这有点像黑客,imo。我不会重申用户在没有看到任何东西的情况下,如何期望通过按下F1实现任何目标的问题。。

相关文章:
  • 没有找到相关文章