我正在使用此代码。 panelButtons []是一个按钮数组。
for (i = 0; i <= 15; i++)
{
int temp = i;
panelButtons[temp].KeyPress += new KeyPressEventHandler(checkKeyPress);
}
}
private void checkKeyPress(object a, KeyPressEventArgs b)
{
if(b.KeyChar==(char)Keys.Enter || b.KeyChar==(char)Keys.Return)
{
DialogResult result = MessageBox.Show("Enter");
}
}
问题在于,它没有检测到输入密钥。我在网上搜索了很多,但我得到的是如何检测文本框上的ENTER键。这种方法和许多其他类似的方法(如KeyDown的想法)都不起作用。
答案 0 :(得分:2)
处理该Button的PreviewKeyDown-Event并将PreviewKeyDownEventArgs.IsInputKey设置为True
Private Sub Button1_PreviewKeyDown(sender As Object, e As PreviewKeyDownEventArgs) Handles Button1.PreviewKeyDown
If e.KeyCode = Keys.Enter Then e.IsInputKey = True
End Sub