- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
索引:DoneKeyboard FunctionKeyName GetKeyboardDriver GetKeyEvent GetKeyEventChar GetKeyEventCode GetKeyEvntFlags GetKeyEventShiftState GetKeyEventUniCode InitKeyBoard
IsFunctionKey KeyEventToString PollKeyEvent PollShiftStateEvent PutKeyEvent SetKeyboardDriver
ShiftStateToString TranslateKeyEvent TranslateKeyEventUniCode
这个单元实现独立于系统的键盘接入层,它可以用来轮询键盘状态,并等待某些事件。等待键盘事件可以通过GetKeyEvent函数来实现,它会返回一个依赖驱动程序的键盘事件。这个事件可以由translatekeyevent函数转换成可解释事件。这个函数的结果可用于其他事件检查函数。
一个自定义的键盘驱动程序(keyboard driver)可由SetKeyboardDriver函数安装。当前键盘驱动程序可以用GetKeyBoardDriver检索。
使用这个单元,一开始要调用InitKeyboard,最后要调用DoneKeyBoard。(后面的程序都是这样。)
注:经测试,下文的功能键指F1~F12及方向键和Home、End、Insert、Page Up、Page Down、Delete。下文说的shift应该是指shift、ctrl、alt。检测shift状态时返回结果是这三个键中任意多个被按下或都未按下。
常量:
以下常量定义了一些错误常量,可能由键盘函数返回:
errKbdBase = 1010;
errKbdInitError = errKbdBase + 0;
errKbdNotImplemented = errKbdBase + 1;
以下常量表示指定的键盘按键。第一个常量指定了功能键:
const
kbdF1 = $FF01;
kbdF2 = $FF02;
kbdF3 = $FF03;
kbdF4 = $FF04;
kbdF5 = $FF05;
kbdF6 = $FF06;
kbdF7 = $FF07;
kbdF8 = $FF08;
kbdF9 = $FF09;
kbdF10 = $FF0A;
kbdF11 = $FF0B;
kbdF12 = $FF0C;
kbdF13 = $FF0D;
kbdF14 = $FF0E;
kbdF15 = $FF0F;
kbdF16 = $FF10;
kbdF17 = $FF11;
kbdF18 = $FF12;
kbdF19 = $FF13;
kbdF20 = $FF14;
常量$15到$1F为未来的功能键预留。以下常量指定光标移动键:
kbdHome = $FF20;
kbdUp = $FF21;
kbdPgUp = $FF22;
kbdLeft = $FF23;
kbdMiddle = $FF24;
kbdRight = $FF25;
kbdEnd = $FF26;
kbdDown = $FF27;
kbdPgDn = $FF28;
kbdInsert = $FF29;
kbdDelete = $FF2A;
常量$2B到$2F为未来的键盘上的键预留。以下标志也被定义:
kbASCII = $00;
kbUniCode = $01;
kbFnKey = $02;
kbPhys = $03;
kbReleased = $04;
他们可以用来检查键盘事件包含什么样的数据。以下shift状态的标志可以用来决定一个键的shift状态(即按一个键时alt、shift、ctrl是否按下):
kbLeftShift = 1;
kbRightShift = 2;
您可能关注的文档
- 2016_【高级精品】2015年基于单片机的步进电机控制器的设计论文3929263.doc
- 2016_【高级精品】2015年基于单片机的点阵.doc
- 2016_【高级精品】2015年基于单片机的电机转速测量系统设计(答辩版)完整毕业设.doc
- 2016_【高级精品】2015年基于单片机的电子负载毕业论文(含原理图+程序).doc
- 2016_【高级精品】2015年基于单片机的电子琴论文.doc
- 2016_【高级精品】2015年基于单片机的电子时钟的设计-毕业论文.doc
- 2016_【高级精品】2015年基于单片机的电子钟设计毕业论文.doc
- 2016_【高级精品】2015年基于单片机的电阻、电容、电感测试仪.doc
- 2016_【高级精品】2015年基于单片机的火灾报警系统.doc
- 2016_【高级精品】2015年基于单片机的简易电子琴设计.doc
文档评论(0)