博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Delphi】注册快捷键
阅读量:4553 次
发布时间:2019-06-08

本文共 1447 字,大约阅读时间需要 4 分钟。

ShortCutToText , TextToShortCut 需 uses Menus;

typeTForm1 = class(TForm)HotKey1: THotKey;Button1: TButton;procedure Button1Click(Sender: TObject);procedure FormDestroy(Sender: TObject);private{ Private declarations }procedure WMHotKey(var Msg:TMessage);message WM_HOTKEY;public{ Public declarations }end;varForm1: TForm1;implementation{$R *.dfm}varKey, Shift: Word;Id: Integer;procedure ShortCutToKey(ShortCut: TShortCut; var Key: Word; var Shift: TShiftState);beginKey := ShortCut and not (scShift + scCtrl + scAlt);Shift := [];if ShortCut and scShift <> 0 then Include(Shift, ssShift);if ShortCut and scCtrl <> 0 then Include(Shift, ssCtrl);if ShortCut and scAlt <> 0 then Include(Shift, ssAlt);end;function ShiftStateToWord(TShift: TShiftState): Word;beginResult := 0;if ssShift in TShift then Result := MOD_SHIFT;if ssCtrl in TShift then Result := Result or MOD_CONTROL;if ssAlt in TShift then Result:= Result or MOD_ALT;end;procedure TForm1.Button1Click(Sender: TObject);varT: TShiftState;beginId := GlobalAddAtom('MyHotKey') - $C000;ShortCutToKey(HotKey1.HotKey, Key, T);Shift := ShiftStateToWord(T);RegisterHotKey(Handle, Id, Shift, Key);end;procedure TForm1.WMHotKey(var Msg: TMessage);beginif (Msg.LparamLo = Shift) AND (Msg.LParamHi = Key) thenShowMessage('This is HotKey');end;procedure TForm1.FormDestroy(Sender: TObject);beginUnRegisterHotKey(Handle, Id);GlobalDeleteAtom(Id);end;end.

 

转载于:https://www.cnblogs.com/lifelog/p/3758581.html

你可能感兴趣的文章
jupyter notebook 目录配置、导出 tex 和 pdf 及中文支持
查看>>
JVM CMS 常用参数配置(修订)
查看>>
线程池
查看>>
SpringBoot之旅第四篇-web开发
查看>>
iOS开发之下拉刷新和上拉加载更多
查看>>
包装类
查看>>
对于范式的理解
查看>>
【大数据算法】蓄水池抽样算法
查看>>
hbase shell出现ERROR:Can't get master address from Zookeeper;znode data==null
查看>>
sphinx全文检索之PHP使用教程
查看>>
蜗牛讲-fabric原理之锚点
查看>>
获取字符串字节长度跟截取字符串字节长度
查看>>
电影记录管理系统 修改与注释,完整代码
查看>>
sklearn.discriminant_analysis.LinearDiscriminantAnalysis 笔记
查看>>
freebsd 断电 单用户模式恢复
查看>>
一道java笔试题
查看>>
设计师交互推荐-提高设计水平的50套精美的PSD模板
查看>>
《机器学习技法》---AdaBoost算法
查看>>
敏捷开发综述
查看>>
sed简单使用(四)选择性显示
查看>>