博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Turn on/off Caps/Num/Scroll Lock
阅读量:6986 次
发布时间:2019-06-27

本文共 949 字,大约阅读时间需要 3 分钟。

type 
  TKeyType 
=
 (ktCapsLock, ktNumLock, ktScrollLock); 
procedure SetLedState(KeyCode: TKeyType; bOn: Boolean); 
var 
  KBState: TKeyboardState; 
  Code: Byte; 
begin 
  
case
 KeyCode of 
    ktScrollLock: Code :
=
 VK_SCROLL; 
    ktCapsLock: Code :
=
 VK_CAPITAL; 
    ktNumLock: Code :
=
 VK_NUMLOCK; 
  end; 
  GetKeyboardState(KBState); 
  
if
 (Win32Platform 
=
 VER_PLATFORM_WIN32_NT) then 
  begin 
    
if
 Boolean(KBState[Code]) 
<>
 bOn then 
    begin 
      keybd_event(Code, 
                  MapVirtualKey(Code, 
0
), 
                  KEYEVENTF_EXTENDEDKEY, 
                  
0
); 
      keybd_event(Code, 
                  MapVirtualKey(Code, 
0
), 

                  KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP, 

                  
0
); 
    end; 
  end 
  
else
 
  begin 
    KBState[Code] :
=
 Ord(bOn); 
    SetKeyboardState(KBState); 
  end; 
end; 
procedure TForm1.Button1Click(Sender: TObject); 
begin 
  SetLedState(ktCapsLock, True);  
//
 CapsLock on 
  SetLedState(ktNumLock, True);  
//
 NumLock on 
  SetLedState(ktScrollLock, True);  
//
 ScrollLock on 

end; 

    本文转自 OldHawk  博客园博客,原文链接:http://www.cnblogs.com/taobataoma/archive/2007/08/20/862694.html,如需转载请自行联系原作者

你可能感兴趣的文章
CentOS 6.3安装Nginx开启目录浏览、下载功能
查看>>
oracle登陆认证方式
查看>>
FMDB/SQLCipher数据库管理
查看>>
cocos_python
查看>>
关于安装oracle 11G R2 for Windows X64问题
查看>>
springmvc 重定向传递参数
查看>>
tomcat实现session集群及tomcat+memcached共享session存储(四)
查看>>
线性时间排序--桶排
查看>>
Three.js学习笔记
查看>>
ceph-deploy部署bluestore
查看>>
AIX修改系统时间 命令
查看>>
Window_Open详解
查看>>
Codeforces 606-C:Sorting Railway Cars(LIS)
查看>>
eclipse ldt update resource
查看>>
java-HTML&javaSkcript&CSS&jQuery&ajax
查看>>
RESTful API 设计最佳实践
查看>>
移动端自动化==>什么是Appium
查看>>
antd递归渲染左侧菜单
查看>>
IP通信基础第二周
查看>>
BZOJ 4070 [Apio2015]雅加达的摩天楼 ——分块 SPFA
查看>>