Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1027950
  • 博文数量: 288
  • 博客积分: 10306
  • 博客等级: 上将
  • 技术积分: 3182
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-12 17:00
文章分类

全部博文(288)

文章存档

2011年(19)

2010年(38)

2009年(135)

2008年(96)

我的朋友

分类: C/C++

2009-08-12 10:35:41

1.)TranslateMessage中对MSG的处理:
 
M_KEYDOWN  中的wParam是非系统的virtual key code只有大写字母。  
WM_CHAR    中的wParam是the character code of the key(比如说ASICC码).  
WM_CHAR    是由TranslateMessage  重新产生的,两者有本质的区别。
==================================================================

WM_KEYDOWN除了响应一般的字符外,还响应home,down,shift等键,判断大小写需要通过判断Caps   Lock和shift键的状态获得.
C/C++ code

byte caps = LOBYTE( GetKeyState(VK_CAPITAL) );  
byte shift = HIBYTE( GetKeyState(VK_SHIFT) );  
if( caps^shift == 0 ){
  //小写  
}else{   
  //大写
}
阅读(2897) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~