首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

c语言下扑获快捷键,该如何解决

2012-02-12 
c语言下扑获快捷键本人打算用c写一些方法,现在碰到了一些麻烦。如何在c下扑获快捷键(Alt+F、Ctrl+O等之类的)

c语言下扑获快捷键
本人打算用c写一些方法,现在碰到了一些麻烦。
如何在c下扑获快捷键(Alt+F、Ctrl+O等之类的)


[解决办法]
TC 下:
函数名称: bioskey
函数原型: int bioskey(int cmd)
函数功能: 读取键盘值
函数返回: cmd=0:返回一个键盘值(ascii值放在低位,扫描码放在高位),若无按键,一直等
cmd=1:查询键盘是否按下:0-无键按下,非0-有键按下
cmd=2:返回控制键状态,返回值保存在低8位中
0-右边的shift键按下 5-已打开Scroll_Lock
1-左边的shift键按下 6-已打开Num_Lock
3-Ctrl键按下 7-已打开Caps_Lock
4-Alt键按下 8-已打开Insert
参数说明:
所属文件: <bios.h>

#include <stdio.h>
#include <bios.h>
#include <ctype.h>
int main()
{
int key, shift;
int lastshift;
while (1)
{
shift=bioskey(2);
if(shift!=lastshift)
printf( "Shift=0x% 02x\n ",shift);
if(bioskey(1))
{
key=bioskey(0);
if((key&0xFF)== 'q ')
break;
printf( "Key=0x% 04x ",key);
}
lastshift=shift;
}
return 0;
}
[解决办法]
SetWindowsHookEx(int idHook, HOOKPROC lpfn, HINSTANCE hmod, DWORD dwThreadId)
UnhookWindowsHookEx(HHOOK hhk)

热点排行