注册热键!

原创 2005年04月25日 08:30: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

C#软件开发实例.私人订制自己的屏幕截图工具(二)创建项目、注册热键、显示截图主窗口

C#软件开发实例.私人订制自己的屏幕截图工具(二)创建项目、注册热键、显示截图主窗口 实现热键功能 这里需要使用WindowsAPI 注册热键:RegisterHotKey 该函数定义一个系统范围的热...

windows 编程 注册热键

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

Windows热键注册(反汇编方法 查看win32api 原理)

要像系统注册一个全局热键,需要用到RegisterHotKey,函数用法如下(MSDN): BOOL RegisterHotKey(                   HWND hWnd,  ...
  • whatday
  • whatday
  • 2012年09月19日 20:02
  • 3104

使用VB在应用程序中注册热键

'窗体中Option ExplicitPrivate Sub Form_Load()Dim ret As Long    '记录原来的window程序地址    preWinProc = GetWin...

Myeclipse5.5.1GA+Myeclipse5.1.1GA注册码及下载地址+eclipse下的热键操作

MyEclipse5.5.1 GA 注册码 Subscriber: www.1cn.biz Subscriber Code: jLR8ZC-655355-5450765457039125 ...

MFC 注册热键

具体实现步骤如下: 1.声明热键消息处理函数原型 在XXXDlg.h中消息映射声明处(afx_msg字样之后)加入如下语句:     afx_msg LRESULT OnHotKey(WPARA...

C#中调用API函数RegisterHotKey注册多个系统热键

要设置快捷键必须使用user32.dll下面的两个方法。 BOOL RegisterHotKey( //注册系统热键的API函数  HWND hWnd,  int id,  U...

JIntellitype一个在Java程序中注册热键的库

项目地址:https://code.google.com/p/jintellitype/ 使用Java做桌面程序不能注册系统级热键,最多只能为JFrame或者JDialog添加键盘监听,而为JFra...

MFC&CPlus: 在MFC中给程序注册热键

本文内容 【本文源于一个实际项目应用,写于2009年,因网上有太多地址在引用本文,故重新贴出,供学习交流。】 给程序注册一个热键相当简单,只需要调用Windows的API RegisterHotK...

C#注册全局热键

注册全局热键要用到Windows的API方法RegisterHotKey和UnregisterHotKey。 一、声明注册热键方法 [DllImport("user32.dll")] p...
  • wuwo333
  • wuwo333
  • 2011年08月04日 09:12
  • 2032
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:注册热键!
举报原因:
原因补充:

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