RAD Studio 10.2.3 测试√


全局变量:

varmHotKey01, mHotKey02: Integer;

1、在程序创建的时候或者窗体显示的时候注册热键

begin// 原子【mHotKey01】mHotKey01 := GlobalAddAtom('xiaoyin_HotKey_CTRL_F1') - $C000;//注册热键【Ctrl + F1】RegisterHotKey(Handle, mHotKey01, MOD_CONTROL, VK_F1);// 原子【mHotKey02】mHotKey02 := GlobalAddAtom('xiaoyin_HotKey_SHIFT_CTRL_F1') - $C000;//注册热键【Ctrl + Shift + F1】RegisterHotKey(Handle, mHotKey02, MOD_CONTROL + MOD_SHIFT, VK_F1);// 如有更多需求,以此类推即可
end;

2、上面注册成功后,此时的热键已经生效,下面就是给相应的热键添加事件

注意:需要声明方法【不管是public还是private还是别的下面都行】
我下面是写在 private 下的

  private{ Private declarations }procedure HotKeyDown(var Msg: Tmessage); message WM_HOTKEY;
// 注册的热键系统收到触发的消息就会程序,然后执行这个方法
procedure TForm1.HotKeyDown(var Msg: Tmessage);
begin// 如果 热键值对上了if (Msg.LparamLo = MOD_CONTROL) and (Msg.LParamHi = VK_F1) thenbeginShowMessage('Ctrl + F1 调用成功');end;if (Msg.LparamLo = MOD_CONTROL + MOD_SHIFT) and (Msg.LParamHi = VK_F1) thenbeginShowMessage('Ctrl + Shift + F1 调用成功');end;
end;

3、用完之后一定记得需要删除热键,不管是在窗体关闭的情况下,还是在销毁的情况下使用都可以

begin// 释放热键【Ctrl + F1】UnRegisterHotKey(handle, mHotKey01);// 删除原子【mHotKey01】GlobalDeleteAtom(mHotKey01);// 释放热键【Ctrl + Shift + F1】UnRegisterHotKey(handle, mHotKey02);// 删除原子【mHotKey02】GlobalDeleteAtom(mHotKey02);
end;

一点点笔记,以便以后翻阅。

Delphi 全局热键注册+使用相关推荐

  1. Delphi全局热键的注册

    1.在窗启动时创建ATOM;(aatom:ATOM;定义在private中) 1 if FindAtom('ZWXhotKey')=0 then 2 begin 3 aatom:=GlobalAddA ...

  2. linux下qt响应全局热键,Qt全局热键(windows篇)(使用RegisterHotKey和句柄进行注册)...

    Qt对于系统底层,一直没有很好的支持,例如串口并口通信,还有我们经常都会用到的全局热键,等等.既然Qt可能出于某种原因,不对这些进行支持,我们就只能自己写代码,调用系统相关的API了. 注意,这个是W ...

  3. 拍牌神器是怎样炼成的(三)---注册全局热键

    要想在上海拍牌的超低中标率中把握机会.占得先机,您不仅需要事先准备好最优的竞拍策略,还要制定若干套应急预案,应对不时之需.既定策略交给计算机自动执行,没有问题.可是谁来召唤应急预案呢?使用全局热键应该 ...

  4. python3 全局热键_python3注册全局热键的实现

    之前用python3做游戏自动化脚本,用过很多东西,然后最终有一套完整的方案.在这里随便阐述一下核心思路: 游戏辅助的窗体设计方面: 不需要pyqt这种大型软件,写小工具用自带的tkinter就行了. ...

  5. python3注册全局热键

    之前用python3做游戏自动化脚本,用过很多东西,然后最终有一套完整的方案.在这里随便阐述一下核心思路: 游戏辅助的窗体设计方面: 不需要pyqt这种大型软件,写小工具用自带的tkinter就行了. ...

  6. 对VB注册全局热键的思考——是不是RegisterHotKey的1个ID可以注册多组热键?

    最近在网络上看到用VB注册热键的代码,试了下,觉得很好用.经过一番分析,我又简化了一下源代码,把没有必要的代码删去,还是能成功.由此引发了一些思考,是不是RegisterHotKeyr的1个ID可以注 ...

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

    要像系统注册一个全局热键,需要用到RegisterHotKey,函数用法如下(MSDN): BOOL RegisterHotKey(                   HWND hWnd,      ...

  8. Qt全局热键(windows篇)

    Qt对于系统底层,一直没有很好的支持,例如串口并口通信,还有我们经常都会用到的全局热键,等等.既然Qt可能出于某种原因,不对这些进行支持,我们就只能自己写代码,调用系统相关的API了. 注意,这个是W ...

  9. VB 全局热键HOOK (不占系统资源版本)

    VB 全局热键HOOK (不占系统资源版本) 看过网上很多的全局热键的写法,几乎都用 do loop 写,很占资源. 这个是占很少资源的 全局热键. Option Explicit Private D ...

最新文章

  1. 【Android】AsyncTask异步类
  2. 读书笔记:php_tizag_tutorial
  3. BZOJ 1208 宠物饲养所 Splay
  4. react-navigation StackNavigator 快速点击会多次跳转页面
  5. 安卓暗黑模式软件_Android App Dark Theme(暗黑模式)适配指南
  6. springboot - 应用实践(2)第一个springboot应用
  7. Java学习笔记之JDBC和连接池
  8. 3cdaemon上传文件到Linux,PC用3CDaemon搭建FTP Server,交换机作为 Client备份配置文件...
  9. Java与网络调试助手TCP通信
  10. unity text颜色渐变
  11. delphi 18位身份证号码的校验
  12. 数据结构——递归算法、递推算法、穷举算法、分治算法
  13. Linux C实现纯用户态抢占式多线程!
  14. php msg oob,MSG_OOB winsock
  15. 信息系统项目管理师必背核心考点(六十二)项目组合治理主要过程
  16. kafka内存缓冲池机制造成的频繁GC问题
  17. 通达信插件获取并存储通达信商品指数的实时数据
  18. Js Event Loop
  19. 什么是 Merkle Pollard
  20. 安卓教程:Xposed 框架安装及使用

热门文章

  1. 区块链学习6:Mist合约部署与删除
  2. 计算机如何调成音乐,如何调出适用于我的均衡器设置?
  3. 编程序,输出1/3-3/5+5/7-7/9…+19/21的结果
  4. ASM磁盘状态为forcing
  5. 温州大学X袋鼠云:高等人才教育建设,如何做到“心中有数”
  6. 计算机考研院校录取人数,2010年计算机考研34所自主划线院校复试成绩及录取人数等详细情况汇总...
  7. 安装scikit-learn问题
  8. 今天生日,感概人生!
  9. Java 服务接入 OpenTracing(2) -- Java 项目快速接入 OpenTracing
  10. python输出去空格_python不空格