left/right 键盘按钮的使用

Using of left/right keyboard button

我正在尝试使用键盘上的左右按钮调用功能,但不确定如何以正确的方式进行。

这次尝试的结果是,按 left/right 键盘键只会以通常的方式在 GUI 元素之间切换,对给定的功能不起作用。不确定这里有什么问题:

   private void Form1_KeyDown(object sender, KeyEventArgs e)
   {
       if (e.KeyCode == Keys.Right)
       {
          func1();
       }
       else if (e.KeyCode == Keys.Left)
       {
          func2();
       }
   }

您的代码可以正常工作,只是不允许您事先按下任何按钮。我认为您正在寻找如图所示的通用按键 here

某些评论中提到的启用键预览的替代方法是覆盖 ProcessCmdKey 方法。

protected override bool ProcessCmdKey(ref Message msg, Keys keyData) 
{
    if (keyData == Keys.Right)
    {
      func1();
      return true;
    }
    else if (keyData == Keys.Left)
    {
      func2();
      return true;
    }
    return base.ProcessCmdKey(ref msg, keyData);
}

请参阅this MSDN article了解更多信息。