free pascal keyboard单元过程函数详解

free pascal keyboard单元过程函数详解

ID:6072977

大小:179.50 KB

页数:17页

时间:2018-01-02

free pascal keyboard单元过程函数详解_第1页
free pascal keyboard单元过程函数详解_第2页
free pascal keyboard单元过程函数详解_第3页
free pascal keyboard单元过程函数详解_第4页
free pascal keyboard单元过程函数详解_第5页
资源描述:

《free pascal keyboard单元过程函数详解》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、索引:DoneKeyboardFunctionKeyNameGetKeyboardDriverGetKeyEventGetKeyEventCharGetKeyEventCodeGetKeyEvntFlagsGetKeyEventShiftStateGetKeyEventUniCodeInitKeyBoardIsFunctionKeyKeyEventToStringPollKeyEventPollShiftStateEventPutKeyEventSetKeyboardDriverShiftStateToStringTranslateKeyEventTranslateKeyEventUniCo

2、de这个单元实现独立于系统的键盘接入层,它可以用来轮询键盘状态,并等待某些事件。等待键盘事件可以通过GetKeyEvent函数来实现,它会返回一个依赖驱动程序的键盘事件。这个事件可以由translatekeyevent函数转换成可解释事件。这个函数的结果可用于其他事件检查函数。一个自定义的键盘驱动程序(keyboarddriver)可由SetKeyboardDriver函数安装。当前键盘驱动程序可以用GetKeyBoardDriver检索。使用这个单元,一开始要调用InitKeyboard,最后要调用DoneKeyBoard。(后面的程序都是这样。)注:经测试,下文的功能键指F1~F12及方

3、向键和Home、End、Insert、PageUp、PageDown、Delete。下文说的shift应该是指shift、ctrl、alt。检测shift状态时返回结果是这三个键中任意多个被按下或都未按下。常量:以下常量定义了一些错误常量,可能由键盘函数返回:errKbdBase=1010;errKbdInitError=errKbdBase+0;errKbdNotImplemented=errKbdBase+1;以下常量表示指定的键盘按键。第一个常量指定了功能键:constkbdF1=$FF01;kbdF2=$FF02;kbdF3=$FF03;kbdF4=$FF04;kbdF5=$FF05

4、;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;kbdRig

5、ht=$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;kbShift=kbLeftShi

6、ftorkbRightShift;kbCtrl=4;kbAlt=8;以下常量字符串用于按键名字函数FunctionKeyName和KeyEventToString:SShift:Array[1..3]ofstring[5]=('SHIFT','CTRL','ALT');LeftRight:Array[1..2]ofstring[5]=('LEFT','RIGHT');UnicodeChar:String='Unicodecharacter';SScanCode:String='Keywithscancode';SUnknownFunctionKey:String='Unknownfuncti

7、onkey:';SAnd:String='AND';SKeyPad:Array[0..($FF2F-kbdHome)]ofstring[6]=('Home','Up','PgUp','Left','Middle','Right','End','Down','PgDn','Insert','Delete','','','','','');他们可以被改成本地化的键名当需要的时候。类型:TKeyEvent类型是键盘

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。