函数功能:该函数检取表示键名的字符串。
1 |
int GetKeyNameText(LONG IParam,LPTSTR IpString,int nSize); |
参数:
IParam:指定被处理的键盘消息(例如WM_KEYDOWN)的第二个参数。该函数Lporam参数的如下部分:
16-23:扫描码;24:扩展标志,用于区别增强型键盘上的某些键:25:”无关”位,调用该函数的应用程序设置此位来表明函数不应区分诸如左右ctrl键和shift键。
LpString:指向接受键名的缓冲区的指针。
nSize:指定键名的最大字符长度,包括空结束符。(该参数值应与LpString参数指定的缓冲区的大小相等)。
返回值:若函数调用成功,将拷贝一个以空结尾的字符串的指定缓冲区中,且返回值为串的长度(字符数),不计终止的空字符。若函数调用失败,返回值为o,若想获得更多的错误信息,可调用GetLastError函数。
备注:键名字符串的格式取决于当前键盘布局,键盘驱动程序持有一张字符串形式的键名表(每个名字长度大于一个字符)并依据当前安装的键盘布局对键名进行翻译。每个字符键的名字是该字符本身,该键的名字被完整的拼写出来。
速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;头文件:winuser.h;库文件:user32.lib;Unicode:在Windows NT上实现为Unicode和ANSI两种版本。