我需要mdi child
用Esc键关闭。我尝试使用keydown
和keypress
事件,但我什至无法让表单在按下任何键时响应这些事件。
问问题
1159 次
4 回答
4
试试这个
private void Form_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Escape)
{
this.Close();
}
}
或利用
Form.CancelButton Property
- 获取或设置当用户按下 ESC 键时单击的按钮控件。
于 2013-02-21T06:21:18.550 回答
3
设置表单的属性KeyPreview=True
并使用Keydown Event
if (e.KeyCode == Keys.Escape){
this.Close();
}
于 2013-02-21T06:27:47.587 回答
2
于 2013-02-21T06:26:02.753 回答
2
首先你必须设置Form.KeyPreview = true
并且你必须知道KeyUp和KeyDown事件之间的区别是什么
private void Form1_KeyUp(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Escape)
{
this.Close();
}
}
如果你想要 KeyPress 事件
private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == 27)
{
this.Close();
}
}
于 2013-02-21T06:29:39.187 回答