您好我正在尝试在WF中创建一个使用KeyPress事件的程序。 我写了以下代码:
private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{
while (true)
{
switch (e.KeyChar)
{
case (char)68:
MessageBox.Show("Test");
break;
}
}
}
但是当我执行程序并按下键时,会出现消息框doensn; t。 有没有人有任何建议或知道如何解决这个问题? 我也被告知KeyDown事件可以工作,但我不知道如何使用它们。
答案 0 :(得分:3)
答案 1 :(得分:3)
不要在事件处理程序中使用while(true)
。它将无限循环。
只做
private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{
switch (e.KeyChar)
{
case (char)68:
MessageBox.Show("Test");
break;
}
}
将按下的键与实际字符而不是ASCII代码进行比较似乎更简洁:
switch (e.KeyChar)
{
case 'D':
MessageBox.Show("Test");
break;
}