易语言全局热键给多个按钮设置热键要怎样实现!

就我想给多个按钮设置全局设置热键就像QQ那样的设置热键一样
2024-12-29 13:49:47
推荐回答(4个)
回答1:

先新建一个windos窗口程序,在窗口程序中画:

一个按钮、一个标签、其中时钟可以不画,为了提现出按下热键后的效果,这里画一个

先写一个时钟周期事件,目的是让按下最小化按钮后窗口被隐藏。

双击时钟,在生成的子程序"_时钟1_周期事件"下面编写代码如下:

如果 (_启动窗口.位置 = 2)_启动窗口.可视 = 假 

设置时钟周期为1000。

PS:启动窗口位置=2的意思是启动窗口被最小化。如果被最小话

然后启动窗口不可视。如图!

让按下按钮后实现热键注册(当然你自己可以根据自己的需求来设定热键如何注册)

点击按钮后生成一个为“_按钮1_被单击”的子程序,创建一个整数型的全局变量“热键”,然后在这个子程序下编写代码如下:

热键 = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F1键)如果 (热键 = 0)信息框 (“抱歉!热键注册失败”, 0, )否则信息框 (“热键注册成功”, 0, )

PS:注册热键()这个程序需要标签窗口的句柄和标签所在窗口的句柄,我设定按F1键后启动窗口被显示出来。并提示成功或失败!返回值是整数,失败返回0。

回到“_启动窗口”,点中标签,加入一个“反馈事件”的子程序,如图所示,子程序会自带两个参数,不要去改动它们。

在标签反馈事件后生成的“_标签1_反馈事件”子程序下面,写入一下代码:

如果 (参数一 = 热键)    _启动窗口.可视 = 真    _启动窗口.位置 = 1PS:判断按下的热键和注册的热键是否相等, 相等时,_启动窗口.位置 = 1表示窗口被居中。

最后调试一下:

一、点击按钮先注册热键为F1,提示成功,再点击最小化隐藏窗口。

二、按一下F1后,热键值和参数值 因为想等,窗口重新显示。成功!

回答2:

.版本 2
.支持库 shellEx
.程序集 窗口程序集1
.程序集变量 a, 整数型
.程序集变量 b, 整数型
.程序集变量 c, 整数型
.程序集变量 d, 整数型
.子程序 _按钮1_被单击
标签1.标题 = “按钮1被单击”
.子程序 _按钮2_被单击
标签1.标题 = “按钮2被单击”
.子程序 _按钮3_被单击
标签1.标题 = “按钮3被单击”
.子程序 _按钮4_被单击
标签1.标题 = “按钮4被单击”
.子程序 __启动窗口_创建完毕
a = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F1键)
b = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F2键)
c = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F3键)
d = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F4键)
.子程序 _标签1_反馈事件, 整数型
.参数 参数一, 整数型
.参数 参数二, 整数型
.如果真 (参数一 = a)
    _按钮1_被单击 ()
.如果真结束
.如果真 (参数一 = b)
    _按钮2_被单击 ()
.如果真结束
.如果真 (参数一 = c)
    _按钮3_被单击 ()
.如果真结束
.如果真 (参数一 = d)
    _按钮4_被单击 ()

回答3:

请采纳!谢谢!

回答4:

得用吧,在家头一个