我试图用键盘上的左右按钮调用功能,但不确定如何正确操作。
在此尝试的结果中,按下左/右键盘键只是在常规方式之间切换GUI元素,并且不适用于给定的功能。不确定这里有什么问题:
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Right)
{
func1();
}
else if (e.KeyCode == Keys.Left)
{
func2();
}
}
答案 0 :(得分:2)
在某些评论中提到的启用keypreview的替代方法是覆盖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。
答案 1 :(得分:1)
你所使用的代码工作正常,你不能事先按任何东西。我认为你正在寻找一般的keydown,如here
所示