2011-01-20 56 views
0

我有一个表格keypreviewtrueOnKeyPress(如果钥匙逃跑)我正在关闭窗体。如果窗体中的文本框自动完成,onKeyPress事件不起作用?

后来我用表格中的第一个文本框设置autocomplete。自动完成功能正在工作,但OnKeyPress事件现在无法正常工作。如果光标不在具有自动完成功能的文本框中OnKeyPress工程并仍然关闭退出键上的窗体。

请指导我如何拥有两者?​​3210关闭逃生。

回答

2

在您的应用程序中,您不应该使用表单事件进行关闭(因为表单上的任何控件都可以通过它自己的方式处理OnKeyPress),您应该注册热键。

[DllImport("user32.dll")] 
private static extern bool RegisterHotKey (int hwnd, int id, int fsModifiers, int vk); 

[DllImport("user32.dll")] 
private static extern bool UnregisterHotKey (int hwnd, int id); 

参考herehere