注册热键!

原创 2004年09月10日 13:26:00

1.定义热键ID变量

private
    { Private declarations }
    hotkeyID:integer;//全局变量,定义热键ID变量
    procedure shorcut(var msg:TMessage);//定义 Windows 的消息WM_HOTKEY 的 HOOK 链
    message WM_HOTKEY;

2.注册热键:

hotkeyID:=GlobalAddATom('hotkey');
RegisterHotkey(Handle,hotkeyID,mod_Control,88);

3. 消息响应:

procedure TForm1.shorcut(var msg: TMessage);
begin
msg.Result:=1; //表示消息已经用过!
Application.BringToFront;
Application.MessageBox('热键已起作用!','提示',MB_OK+MB_ICONInformation);
end;

4. 释放资源:

procedure TForm1.FormDestroy(Sender: TObject);
begin
UnRegisterHotKey(handle,hotkeyID);
DeleteAtom(HotKeyID);
end;
5.RegisterHotKey 函数原形如下

 

         BOOL RegisterHotKey(
            HWND hWnd,             // 连接热键的窗口句柄

             int id,                 // 全局原子句柄

             UINT fsModifiers,      // 热键修饰标志

             UINT vk                 // 虚拟键盘码

             );

找虚拟键值,可以在delphi help里搜索virtual Key

注册热键及使用方法

作者:古典小说网 头条:讨厌编程  、 古典古韵古典小说 作品:快乐课堂软件、任性动图软件、古典小说大全 定义 HACCEL m_hAccelerator;// 加速...
  • shuilan0066
  • shuilan0066
  • 2017-11-20 11:17:26
  • 173

vc 如何注册系统热键

原文链接:http://www.cnblogs.com/VCdog/archive/2010/04/07/1706228.html 纵观整个搜索引擎,这个样的主题文章也很多,就是没有自己亲自...
  • zzstack
  • zzstack
  • 2016-01-12 09:19:20
  • 609

C#注册全局热键

注册全局热键要用到Windows的API方法RegisterHotKey和UnregisterHotKey。一、声明注册热键方法[DllImport("user32.dll")] private st...
  • s4gg
  • s4gg
  • 2008-09-24 20:31:00
  • 7053

Delphi全局热键注册

private { Private declarations } Aatom: ATOM; procedure hotkey(var msg: TMessage); messa...
  • gfuchao
  • gfuchao
  • 2016-07-28 17:21:51
  • 331

Windows热键注册原理

要像系统注册一个全局热键,需要用到RegisterHotKey,函数用法如下(MSDN):BOOL RegisterHotKey(                  HWND hWnd,       ...
  • testcs_dn
  • testcs_dn
  • 2014-05-05 14:55:58
  • 6829

易语言注册多个热键源码

.版本 2 .支持库 shellEx .程序集 窗口程序集1 .程序集变量 a .程序集变量 b .程序集变量 c .子程序 __启动窗口_创建完毕 ' --==...
  • cyuyan112233
  • cyuyan112233
  • 2013-08-10 19:13:31
  • 2098

windows 编程 注册热键

网上找了很多关于注册热键的,都是基于MFC 响应的。 本文是 直接响应 对于注册多个热键,使用hotkeyid ,我这里是使用 对于 输入的按键,进行拼接,将保证每次键入的id 都不同,方...
  • anhuiyuhu
  • anhuiyuhu
  • 2013-11-29 14:30:27
  • 1078

用DELPHI如何注册系统热键

以下为转贴:用到3个API函数 1、BOOL RegisterHotKey( HWND hWnd,  //响应该热键的窗口句柄 Int id,      //该热键的唯一标识 UINT fsModif...
  • qqp_528
  • qqp_528
  • 2008-04-14 16:38:00
  • 4927

MFC程序注册热键

1、首先在.h文件中添加消息响应函数声明  afx_msg LRESULT OnHotKey(WPARAM wParam,LPARAM lParam); 2、关联消息及响应函数   ...
  • zhangkuo8512067
  • zhangkuo8512067
  • 2015-01-14 11:36:42
  • 640

MFC注册热键

具体实现步骤如下: 1.声明热键消息处理函数原型 在XXXDlg.h中消息映射声明处(afx_msg字样之后)加入如下语句: afx_msg LRESULT OnHotKey(WPARAM w...
  • u011619422
  • u011619422
  • 2015-12-15 16:26:00
  • 446
收藏助手
不良信息举报
您举报文章:注册热键!
举报原因:
原因补充:

(最多只允许输入30个字)