用Delphi检测特殊键状态

糖出水芙蓉

糖出水芙蓉

2016-01-29 14:18

用Delphi检测特殊键状态,用Delphi检测特殊键状态
 

  在编程中,三个特殊键(NUM LOCK键、CAPS LOCK键、SCROLL LOCK键)是可以通过键盘控制操作的。但有时在应用程序中需要切换大小写输入、数字键输入等功能,这就需要在程序中加入自动判别这些键状态和切换这些键状态的功能。笔者用Delphi4.0编制了一个检测和切换这些特殊键的程序。

  一、创建含有如下控件的窗体:


控件
Caption


form1
用Delphi检测Num Lock键,Caps Lock键,Scroll Lock键的状态


checkbox1
按下Num Lock键


checkbox2
按下Caps Lock键


checkbox3
按下Scroll Lock键


Time1
 


二、编写如下程序:

  unit nums;

  interface

  uses

   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

   ExtCtrls, ComCtrls, StdCtrls;

  type

   TForm1 = class(TForm)

  Timer1: TTimer;

  CheckBox1: TCheckBox;

  CheckBox2: TCheckBox;

  CheckBox3: TCheckBox;

  procedure Timer1Timer(Sender: TObject);

   private

  { Private declarations }

   public

  { Public declarations }

   end;

  var

   Form1: TForm1;

  implementation

  {$R .DFM}

  procedure TForm1.Timer1Timer(Sender: TObject);

  var keystates:TKeyboardState;

  begin

  getkeyboardstate(keystates);

  begin

  if odd(keystates[vk—numlock]) then

  checkbox1.Checked:=true

  //判断是否按下Num Lock钮

  Numlock

  else

  checkbox1.Checked:=false;

  if odd(keystates[vk—CAPITAL]) then

  checkbox2.Checked:=true

  //判断是否按下Caps Lock钮

  else

  checkbox2.Checked:=false;

  if odd(keystates[vk—Scroll]) then

  //判断是否按下Scroll Lock钮

  checkbox3.Checked:=true

  else

  checkbox3.Checked:=false;

  end;

  end;

  end.

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/delphi/) 
展开更多 50%)
分享

猜你喜欢

用Delphi检测特殊键状态

Delphi
用Delphi检测特殊键状态

delphi编程实现检测声卡存在

编程语言 网络编程
delphi编程实现检测声卡存在

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

用Delphi检测IE使用的代理服务器

Delphi
用Delphi检测IE使用的代理服务器

Delphi编程检测驱动器类型

编程语言 网络编程
Delphi编程检测驱动器类型

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

你想成Delphi高手吗?快来学Delphi快捷键

Delphi
你想成Delphi高手吗?快来学Delphi快捷键

足月新生儿有哪些特殊状态?

新生儿
足月新生儿有哪些特殊状态?

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

《热血龙珠》什么样的卡牌值得培养

《热血龙珠》什么样的卡牌值得培养

《神之刃》平民试炼主流战宠选择攻略

《神之刃》平民试炼主流战宠选择攻略
下拉加载更多内容 ↓