如何使用IF-ELSE定义热键



我想执行两种用于不同热键的方法,请检查按下哪个键

如何使用此示例?

我使用So:

private static void Main()
{
  HotKeyManager.RegisterHotKey(key: Keys.G, modifiers: HotKeyEventArgs.KeyModifiers.Alt);
  HotKeyManager.HotKeyPressed += new EventHandler<HotKeyEventArgs>(HotKeyManager_HotKeyPressed);
  Console.ReadLine();
}
private static void HotKeyManager_HotKeyPressed(object sender, HotKeyEventArgs e)
{
  Console.WriteLine("Example HotKeys Activate");
}

如何使用不同的热键进行两个不同的事件?

您需要注册所有热键,然后可以使用KeyModifiers HotKeyEventArgs的属性:

private static void Main()
{
    HotKeyManager.RegisterHotKey(key: Keys.G, modifiers: HotKeyEventArgs.KeyModifiers.Alt);
    HotKeyManager.RegisterHotKey(key: Keys.P, modifiers: HotKeyEventArgs.KeyModifiers.Alt);
    HotKeyManager.HotKeyPressed += new EventHandler<HotKeyEventArgs>(HotKeyManager_HotKeyPressed);
    Console.ReadLine();
}
private static void HotKeyManager_HotKeyPressed(object sender, HotKeyEventArgs e)
{
    if (e.Key == Keys.G && e.Modifiers == HotKeyEventArgs.KeyModifiers.Alt)
       OnPressedAltG();
    else if (e.Key == Keys.P && e.Modifiers == HotKeyEventArgs.KeyModifiers.Alt)
       OnPressedAltP();
}
private static void OnPressedAltG()
{
    Console.WriteLine("Alt+G was pressed.");
}
private static void OnPressedAltP()
{
    Console.WriteLine("Alt+P was pressed.");
}

最新更新