Rss & SiteMap

搭建论坛 http://bbs.diylsoft.com:8118/starforum/index.asp

搭建论坛是“搭建式”中文软件开发工具《搭建之星》、《网站·搭建者》技术交流的地方。
共3 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:如何检测NUMLOCK按键的状态

1楼
xuexue 发表于:2014-9-30 10:09:22
如何检测NUMLOCK按键的状态,请高手能写个试下吗
2楼
jsphp 发表于:2014-10-3 10:28:13

如何检测Insert、Capslock、NumLock、ScrollLock状态键的状态

 

可以调用Win API的Getkeyboardstate()函数。

常量 按键名称

VK_INSERT insert键

VK_NUMLOCK Num Lock键

VK_CAPITAL Caps Lock键

VK_SCROLL Scroll Lock键

键盘缓冲区每一位都有一位特定的格式,对于状态键来说,最低位是1时表示状态键处于ON状态,你可以使用odd()函数来确定这一

位的状态,以下是一个简单的例子请参考。例子中放置一个Timer控件、一个StatusBar状态条。

procedure TForm1.Timer1Timer(Sender: TObject);

var ks:tkeyboardstate;

begin

getkeyboardstate(ks);//检测键盘函数

if odd(ks[VK_NUMLOCK]) then

statu**ar1.panels.items[0].text:='NUM'

else

statu**ar1.panels.items[0].text:='';

if odd(ks[VK_INSERT]) then

statu**ar1.panels.items[1].text:='INSERT'

else

statu**ar1.panels.items[1].text:='';

if odd(ks[VK_CAPITAL]) then

statu**ar1.panels.items[2].text:='CAPITAL'

else

statu**ar1.panels.items[2].text:='' ;

if odd(ks[VK_SCROLL]) then

statu**ar1.panels.items[3].text:='SCROLL'

else

statu**ar1.panels.items[3].text:='';

end; 

3楼
seedog 发表于:2014-10-3 10:43:39

需要用到 调用系统 API ...

共3 条记录, 每页显示 10 条, 页签: [1]

搭建之星 网站·搭建者 Copyright © 2000 - 2011
Powered By Dvbbs Version 8.2.0
Processed in 0.07813 s, 3 queries.