我试图制作它,以便当用户按下键盘上的PrintScreen按钮时,会出现一个消息框。
我在网上看了很多,这段代码似乎是如何去做的标准。
问题是,我收到错误消息
System.Windows.Forms.KeyPressEventArgs'不包含定义 对于KeyCode'没有扩展方法' KeyCode'接受第一个 类型' System.Windows.Forms.KeyPressEventArgs'的参数可能 发现(您是否缺少using指令或程序集引用?)
private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyCode == Keys.PrintScreen)
{
MessageBox.Show("Test");
}
}
答案 0 :(得分:5)
不使用KeyPress,而是使用KeyDown事件。 KeyPress事件只会触发可打印字符,而PrintScreen不是其中之一,因此它只暴露KeyChar属性,而KeyDown或KeyUp将公开KeyCode。
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyCode == Keys.PrintScreen)
{
MessageBox.Show("Test");
}
}
答案 1 :(得分:0)
您可以使用
e.Key == Key.Snapshot
这将适用于KeyUp和KeyDown事件。