问题:
当窗体中有键盘输入触发事件,这个时候触发事件是正常的,但是当在窗体中添加按钮事件后,键盘输入事件失效。
原因:
Keypress事件所指示的控件找不到焦点。
解决:
可以使用以下代码:
KeyPreview = true;//获取键盘事件
//当为true时窗体将接受所有的keypress、keydown和keyup事件
KeyPreview表示:获取或设置一个值,该值指示在将键事件传递到具有焦点的控件前,窗体是否接受此键事件
属性值KeyPreview 如果窗体将接收所有键的事件,则值为true;如果窗体上当前选定控件接收键事件,则值为false,默认为false。
当此属性设置为true时,窗体将接收所有的KeyPress、KeyDown和KeyUp事件。在窗体的处理事件处理程序处理完该击键后,然后将该击键分配给具有焦点的控件上。