您的位置:首页 > 产品设计 > UI/UE

关于为什么WinForm控件收不到上下左右之类的特殊按键的问题

2007-11-12 15:44 411 查看
 刚上手C#没几天,要做一个3D相关项目的UI,并且和一个DirectX的应用模块(封装成了DLL)结合。。。搞了半天在一些WinForm控件上按上下左右和其他一些特殊按键的时候,都不响应ON_KEYDOWN的事件,重写了一下WndProc发觉按这些键的时候完全收不到WM_KEYDOWN和WM_KEYUP的消息。

怒了,编了一个MessageFilter。。。。把所有消息都转给DX的那个模块了。。。懒人懒方法。。

不过又翻了一些文章。。。。找到了这个
How to trap keystrokes in controls by using Visual C#
http://support.microsoft.com/kb/320584/en-us

发觉原来dotNet FW中强制把这些按键归为WM_SYSKEYDOWN消息所属,不再以WM_KEYDOWN的VK_XXXX形式表示。
汗,WM_SYSKEYDOWN。。。一万年都没有用过这个消息。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  winform c# dll ui