如何定义快捷键ESC?
Shortcut属性里面找不到!!
怎么办??

解决方案 »

  1.   

    苯方法:
    通过keypress事件处理。
      

  2.   

    你可以在这个对象的键盘响应事件中根据取的的键值来做相应的处理工作。不也就你要的
    快捷键ESC吗?
      

  3.   

    我试过了,可是不行呀,根本没反应!!!
    属性也设置为TRUE了!!
      

  4.   

    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;type
      TForm1 = class(TForm)
        Button1: TButton;
        procedure FormCreate(Sender: TObject);
        procedure FormDestroy(Sender: TObject);
      private
        { Private declarations }
        procedure WMHotKey(var Msg : TWMHotKey);message WM_HOTKEY;  public
        { Public declarations }  end;var
      Form1: TForm1;implementationuses Unit2;{$R *.dfm}
    Const
      iSNAPSHOT = 101;
    procedure TForm1.FormCreate(Sender: TObject);
    begin
       //将ESC键注册为热键
       RegisterHotKey(Form1.handle,
                      iSNAPSHOT,
                      0,
                      VK_ESCAPE
                      );
    end;procedure TForm1.FormDestroy(Sender: TObject);
    begin
      UnRegisterHotKey(Form1.Handle,iSNAPSHOT);
    end;procedure TForm1.WMHotKey(var Msg: TWMHotKey);
    begin
      if Msg.HotKey = iSNAPSHOT then
      showmessage('热键为ESC!');
    end;end.
      

  5.   

    我已经实现,但用的不是你们的方法!!
    哈哈!!
    直接在Shortcut属性中写ESC就可以了!!
    哈哈哈!!
    居然没人知道这么简单的方法!!