首页
社区
课程
招聘
SetWindowLong的问题
发表于: 2013-9-3 17:27 7791

SetWindowLong的问题

2013-9-3 17:27
7791
使用SetWindowLong  GWL_WNDPROC 函数为Edit控件设置一个新的窗口过程 ..

LRESULT CALLBACK WinSunProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
        //0x21 ----- 0x7E
        if( uMsg == WM_KEYUP   && (wParam>0x21))
        {
                DbgPrintffAisn("[wParam] wParam is:%c\n",wParam);
        }
        return prevProc(hwnd,uMsg,wParam,lParam);
}
在回调函数中 将需要的按键打印出来..  但是为什么 输入小写的a的时候打印出来的却是大写A呢?
要怎样 来判断 输入的字符是 大写还是小写呢??  默认都是打印大写的字符啊 ...

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 14
活跃值: (88)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
你开了大写锁定键?判断大小写就根据Asc来判断
2013-9-3 18:42
0
雪    币: 147
活跃值: (33)
能力值: ( LV6,RANK:94 )
在线值:
发帖
回帖
粉丝
3
WM_KEYDOWN当然都是大写的了,可以用WM_CHAR啊
2013-9-3 18:42
0
雪    币: 6
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
是的是的 就是 WM_KEYDOWN 的问题 改成WM_CHAR就好了.. 奇葩啊..
2013-9-3 19:00
0
雪    币: 35
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
咦 以前我也遇到过 看来很多热心人啊
2013-9-4 00:46
0
雪    币: 7048
活跃值: (3527)
能力值: ( LV12,RANK:340 )
在线值:
发帖
回帖
粉丝
6
加上GetKeyboardState
判断Caps Lock
2013-9-4 01:15
0
雪    币: 6
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
判断 Caps Lockp 这个倒是不需要啦..
2013-9-11 01:09
0
游客
登录 | 注册 方可回帖
返回
//