设为首页 加入收藏

TOP

键盘(十一)
2010-12-30 21:11:33 来源: 作者: 【 】 浏览:32450
Tags:键盘
用一些时间来处理每一次按键时,如果忽略您程式中的重复计数,就能够解决此问题。不过,有时可能也会用到重复计数,您应该尝试使用两种方法执行程式,并从中找出一种较好的方法。

OEM扫描码
 

OEM扫描码是由硬体(键盘)产生的代码。这对中古时代的组合语言程式写作者来说应该很熟悉,它是从PC相容机种的ROM BIOS服务中所获得的值(OEM指的是PC的原始设备制造商(Original Equipment Manufacturer)及其与「IBM标准」同步的内容)。在此我们不需要更多的资讯。除非需要依赖实际键盘布局的样貌,不然Windows程式可以忽略掉几乎所有的OEM扫描码资讯,参见第二十二章的程式KBMIDI。

扩充键旗标
 

如果按键结果来自IBM增强键盘的附加键之一,那么扩充键旗标为1(IBM增强型键盘有101或102个键。功能键在键盘顶端,游标移动键从数字键盘中分离出来,但在数字键盘上还保留有游标移动键的功能)。对键盘右端的Alt和Ctrl键,以及不是数字键盘那部分的游标移动键(包括Insert和Delete键)、数字键盘上的斜线(/)和Enter键以及Num Lock键等,此旗标均被设定为1。Windows程式通常忽略扩充键旗标。

内容代码
 

右按键时,假如同时压下ALT键,那么内容代码为1。对WM_SYSKEYUP与WM_SYSKEYDOWN而言,此位元总视为1;而对WM_SYSKEYUP与WM_KEYDOW讯息而言,此位元为0。除了两个之外:

键的先前状态
 

如果在此之前键是释放的,则键的先前状态为0,否则为1。对WM_KEYUP或者WM_SYSKEYUP讯息,它总是设定为1;但是对WM_KEYDOWN或者WM_SYSKEYDOWN讯息,此位元可以为0,也可以为1。如果为1,则表示该键是自动重复功能所产生的第二个或者後续讯

首页 上一页 8 9 10 11 12 13 14 下一页 尾页 11/61/61
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇滑鼠 下一篇图形基础

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: