zoukankan      html  css  js  c++  java
  • 快捷键设置控件: THotKey [1]

    运行效果图:


    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, ComCtrls;
    
    type
      TForm1 = class(TForm)
        HotKey1: THotKey;
        Memo1: TMemo;
        CheckBox1: TCheckBox;
        CheckBox2: TCheckBox;
        CheckBox3: TCheckBox;
        CheckBox4: TCheckBox;
        procedure FormCreate(Sender: TObject);
        procedure CheckBox1Click(Sender: TObject);
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.CheckBox1Click(Sender: TObject);
    begin
      HotKey1.Modifiers := [];
      if CheckBox1.Checked then HotKey1.Modifiers := HotKey1.Modifiers + [hkShift];
      if CheckBox2.Checked then HotKey1.Modifiers := HotKey1.Modifiers + [hkCtrl];
      if CheckBox3.Checked then HotKey1.Modifiers := HotKey1.Modifiers + [hkAlt];
      if CheckBox4.Checked then HotKey1.Modifiers := HotKey1.Modifiers + [hkExt];
    end;
    
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      Memo1.Clear;
      Memo1.Align := alTop;
      Memo1.ScrollBars := ssVertical;
      Memo1.Lines.Add('1、你现在看到的可不是 TEdit, 它是处理快捷键用的 HotKey 控件;');
      Memo1.Lines.Add('2、激活后, 输入几个字母试试;');
      Memo1.Lines.Add('3、按 Ctrl+*; * 表示任意键;');
      Memo1.Lines.Add('4、按 Ctrl+Alt+*;');
      Memo1.Lines.Add('5、按 Shift+Ctrl+* 或 Shift+Alt+* 都可以;');
      Memo1.Lines.Add('6、按 Shift+Ctrl+Alt+* 也可以;');
      Memo1.Lines.Add('7、但按 Shift+* 不可以; 因为 HotKey.InvalidKeys 默认禁止了它;');
      Memo1.Lines.Add('8、不过我们可以用 HotKey.Modifiers 打开它.');
    
      CheckBox1.Caption := 'hkShift';
      CheckBox2.Caption := 'hkCtrl';
      CheckBox3.Caption := 'hkAlt';
      CheckBox4.Caption := 'hkExt';
    
      CheckBox1.Checked := False;
      CheckBox2.Checked := False;
      CheckBox3.Checked := True;
      CheckBox4.Checked := False;
    
      CheckBox2.OnClick := CheckBox1.OnClick;
      CheckBox3.OnClick := CheckBox1.OnClick;
      CheckBox4.OnClick := CheckBox1.OnClick;
    end;
    
    end.
    
  • 相关阅读:
    POJ 2528 Mayor's posters(线段树)
    Codeforces Beta Round #22 (Div. 2 Only) C. System Administrator(构造割点)
    HDU 4417 Super Mario(划分树)
    Codeforces Beta Round #22 (Div. 2 Only) D. Segments(贪心)
    HDU 1247 Hat’s Words(字典树)
    HDU 3639 HawkandChicken(强连通分量)
    HDU 3394 Railway(点双连通分量)
    HDU 1394 Minimum Inversion Number(树状数组)
    HDU 3874 Necklace(树状数组+离线处理)
    树状数组
  • 原文地址:https://www.cnblogs.com/del/p/1113250.html
Copyright © 2011-2022 走看看