精易论坛

标题: 编辑框改热键框模块源码 [打印本页]

作者: 帅气与大侠    时间: 2023-3-16 23:16
标题: 编辑框改热键框模块源码
本帖最后由 帅气与大侠 于 2023-3-16 23:56 编辑


      大家在开发软件时经常需要配置众多快捷键,内置固定快捷键有时会和其他软件冲突,扩展组件库里的热键框不能用,第三方热键框支持库也有bug,论坛早期开源的一些热键框使用上也有一些局限和不便,所以花了一些时间重写了一个。
      首先易语言的窗口、组件的按下某键事件是不支持完整的小键盘按键信息的,功能上就有缺陷不完整,其次如果组件原生事件来设计,开发者就要设置按下某键、放开某键、失去焦点等事件代码,会造成很多不便。还有就是自动注册管理全局热键和窗口热键上也会增加不少代码量和负担。

      为了解决这些问题,就需要使用 SetWindowLong() 函数来接管组件的消息过程,就可以全面接管按键信息,实现全键盘快捷键支持。


目前改造的热键框实现了以下功能:

热键框支持:
1.支持组合键:Ctrl + Shift + Alt + 热键(支持小键盘按键识别)。2.支持准确的快捷键设置完成回调事件通知。
3.支持自动管理全局热键的注册和撤销,当用户设置完快捷键后内部自动进行注册,以及保存配置重启软件后也会对上次设置的热键进行自动注册,开发者不需要额外编写多余注册热键管理代码,(不需要内置的可自主使用回调事件来自行注册管理)。
4.还提供了相关的函数方法,共开发者自主注册管理热键使用


使用例子:
1.最简短的代码量,一行代码搞定。内部自动注册管理热键,热键触发会通过标签反馈事件通知

  
子程序名返回值类型公开备 注
_窗口1_创建完毕  
热键框_初始化 (窗口1, “热键框”, 0, 标签1.取窗口句柄 ())
子程序名返回值类型公开备 注
_标签1_反馈事件整数型 
参数名类 型参考可空数组备 注
参数一整数型
参数二整数型
判断 (参数一 = 热键框_取热键标识 (热键框1.取窗口句柄 ()))
调试输出 (“热键框1”)
判断 (参数一 = 热键框_取热键标识 (热键框2.取窗口句柄 ()))
调试输出 (“热键框2”)
判断 (参数一 = 热键框_取热键标识 (热键框3.取窗口句柄 ()))
调试输出 (“热键框3”)




i支持库列表   支持库注释   
spec特殊功能支持库




2.如果开发者有全局热键和局部窗口热键的需求,可采用回调事件来自主管理热键,热键注册也可使用精易模块相关命令。
  
子程序名返回值类型公开备 注
热键设置完成回调整数型 
参数名类 型参考可空数组备 注
编辑框句柄整数型
键代码整数型
功能键状态整数型
快捷键文本指针整数型指针到文本()获取
变量名类 型静态数组备 注
热键标识整数型 
快捷键文本文本型 
快捷键文本 = 指针到文本 (快捷键文本指针)
热键标识 = 热键框_取热键标识 (编辑框句柄)
如果真 (热键标识 ≠ 0)
撤销热键 (取窗口句柄 (), 热键标识)

判断 (键代码 = #退格键 键代码 = 91)
快捷键文本 = “无”

热键标识 = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 功能键状态, 键代码)
快捷键文本 = 选择 (热键标识 ≠ 0, 快捷键文本, “无”)
热键框_记录快捷键信息 (编辑框句柄, 键代码, 功能键状态, 快捷键文本, 热键标识)

SetWindowTextA (编辑框句柄, 快捷键文本)
返回 (1)


i支持库列表   支持库注释   
shellEx扩展功能支持库一


3.当软件启动时,想要自动注册应用用户上次设置的快捷键设置代码例子:

  
' 启动时先读取快捷键文本到热键框,然后初始化后就会自动注册,如果是自主注册管理热键的,初始化里提供回调指针,会呼叫该回调
批量_编辑框_读取配置 (窗口1, “config.ini”)
热键框_初始化 (窗口1, “热键框”, 0, 标签1.取窗口句柄 ())
  
' 启动时先读取快捷键文本到热键框,然后初始化后就会自动注册,如果是自主注册管理热键的,初始化里提供回调指针,会呼叫该回调
热键框1.内容 = “Ctrl + Alt Num 1”
热键框2.内容 = “Ctrl + Alt Num 2”
热键框_初始化 (窗口1, “热键框”, 0, 标签1.取窗口句柄 ())


源码下载:




作者: 希纱    时间: 2023-3-16 23:27
[易语言纯源码] [分享源码] 编辑框改热键框模块源码                            所以源码在哪里
作者: qcby    时间: 2023-3-16 23:34
所以源码在哪里
作者: 帅气与大侠    时间: 2023-3-17 00:03
qcby 发表于 2023-3-16 23:34
所以源码在哪里

在编辑帖子内容中途,误按了发帖了,已重新编辑,等待审核中呢
作者: 帅气与大侠    时间: 2023-3-17 00:04
希纱 发表于 2023-3-16 23:27
[易语言纯源码] [分享源码] 编辑框改热键框模块源码                            所以源码在哪里 ...

在编辑帖子内容中途,误按了发帖了,已重新编辑,等待审核中呢
作者: 空竹    时间: 2023-3-17 08:24
正好拿来直接套用
作者: 一指温柔    时间: 2023-3-17 08:32
开源精神必须支持~
作者: wuqingg    时间: 2023-3-17 08:35
感谢分享,很给力!~
作者: pjm123    时间: 2023-3-17 08:53
谢谢分享
作者: sa123123    时间: 2023-3-17 08:58
感谢发布原创作品,精易因你更精彩!
作者: 731152739    时间: 2023-3-17 09:11
谢谢分享
作者: 阿婆    时间: 2023-3-17 09:16
感谢分享 学习
作者: mythleng    时间: 2023-3-17 09:20
感谢分享 学习
作者: 网络注册会员    时间: 2023-3-17 09:33
支持一下
作者: xjshuaishuai    时间: 2023-3-17 09:37
谢谢分享!
作者: zl2222    时间: 2023-3-17 09:44
谢谢分享!
作者: renjianhong48we    时间: 2023-3-17 10:32
感谢分享
作者: 听白    时间: 2023-3-17 11:52
感谢分享
作者: 帅气与大侠    时间: 2023-3-17 14:02
空竹 发表于 2023-3-17 08:24
正好拿来直接套用


作者: dawang2014    时间: 2023-3-17 15:27
感谢发布原创作品,精易因你更精彩!
作者: 深圳梦    时间: 2023-3-17 18:59
感谢分享,很给力!~
作者: 不是吧1    时间: 2023-3-17 19:07
感谢分享,精易有你更精彩。
作者: an1994114    时间: 2023-3-17 19:10
6666666666666666666666666666666
作者: cf2006a    时间: 2023-3-17 19:13
看上去很有用的样子 收藏

作者: 美味萝卜    时间: 2023-3-17 20:35
感谢发布原创作品,精易因你更精彩!
作者: 亿万    时间: 2023-3-17 22:23
支持开源~!感谢分享
作者: lqylbh    时间: 2023-3-17 22:26
感谢发布原创作品,精易因你更精彩!
作者: 风中冰雨    时间: 2023-3-17 22:47
看看........
作者: 794229345    时间: 2023-3-17 23:39
看下隐藏内容~~
作者: 794229345    时间: 2023-3-18 13:31
看下隐藏内容~~
作者: 学易未精    时间: 2023-3-18 13:37
谢谢         
作者: 396384183    时间: 2023-3-18 14:13
开源精神必须支持~
作者: 良剑追风    时间: 2023-3-18 15:52
6666666666666666666
作者: 道无尘    时间: 2023-3-18 16:12
66666666666666666666
作者: 大漠小鸟    时间: 2023-3-18 23:07
666666666666666
作者: 我只玩丿巨魔    时间: 2023-3-19 02:17
不愧是你,拿来看看
作者: yyyyyyyyyyyyyyy    时间: 2023-3-19 12:48

作者: 光影魔术    时间: 2023-3-20 00:58
谢谢楼主的源码,学习了
作者: brucelee0720    时间: 2023-3-20 01:27
看看到底怎么样
作者: qiufeihai    时间: 2023-3-20 01:29

作者: kyo9766    时间: 2023-3-20 16:15
很实用,感谢分享
作者: Code123    时间: 2023-3-21 08:32
        感谢分享,很给力!~
作者: 路远啊    时间: 2023-3-21 16:33
编辑框改热键框模块源码
作者: rszhao    时间: 2023-3-22 03:18

作者: 韦贝贝    时间: 2023-3-22 09:35
感谢分享,很给力!~
作者: vesslin    时间: 2023-3-22 18:19

作者: kantal    时间: 2023-3-22 21:36
开源精神必须支持~
作者: 一C    时间: 2023-3-23 05:56
支持大佬
作者: springsnow    时间: 2023-3-23 07:23
下载学习一下
作者: 半辈子    时间: 2023-3-23 08:50
必须学习一下
作者: jnjcsh    时间: 2023-3-23 09:26
感谢分享 感谢分享
作者: tlwg    时间: 2023-3-23 10:56
啊        感谢分享,很给力!~
作者: 智慧云端!    时间: 2023-3-23 11:34
支持开源,谢谢分享
作者: jy942042541    时间: 2023-3-23 11:35
编辑框改热键框模块源码
作者: camingo    时间: 2023-3-23 11:47

作者: 只听你德歌    时间: 2023-3-23 15:44
        感谢分享,很给力!~
作者: 指尖流淌    时间: 2023-3-23 16:45
支持开源~!感谢分享
作者: LovelyEven    时间: 2023-3-23 17:09
谢谢分享啦
作者: k5790    时间: 2023-3-23 17:11
还可以这样啊,学习一下
作者: yinghao2005    时间: 2023-3-23 17:16
感谢分享这个功能比较有用
作者: 784326742    时间: 2023-3-23 17:39
目测BUG一堆
作者: dwcq    时间: 2023-3-23 17:50
        感谢分享,很给力!~
作者: 在线学习    时间: 2023-3-23 18:54
学习才能进步
作者: Mavrick    时间: 2023-3-23 19:30
学习才能进步
作者: 易团雪    时间: 2023-3-23 19:36
启动时先读取快捷键文本到热键框,
作者: hot355    时间: 2023-3-23 19:52
多谢大牛分享, 学习!
作者: xxx159357    时间: 2023-3-23 20:01
好,太好了
作者: vmleft    时间: 2023-3-23 22:56
编辑框改热键框模块源码
作者: wuzhiai    时间: 2023-3-23 23:41
11111111   
作者: suchenxuan    时间: 2023-3-24 01:23

        支持开源~!感谢分享
作者: 007软件    时间: 2023-3-24 07:09
加载脚本list
作者: b0y    时间: 2023-3-24 08:20
很给力,支持一波
作者: l7518597    时间: 2023-3-24 09:14
感谢分享
作者: ijiajian    时间: 2023-3-24 11:07
bucuo ,bucuo
作者: FUYUEPC    时间: 2023-3-24 12:34
楼主辛苦了,谢谢楼主,感谢楼主分享,楼主好人一生平安!!!
作者: sostemp    时间: 2023-3-24 14:18
感谢分享,很给力!~
作者: 忧郁之子    时间: 2023-3-24 15:09
谢谢分享,支持i一下。
作者: qilongcainiao    时间: 2023-3-24 15:40
感谢分享,很给力!~
作者: wyr    时间: 2023-3-24 17:57
支持开源~!感谢分享
作者: jy96520    时间: 2023-3-24 17:57
感谢分享

作者: 我非平凡    时间: 2023-3-24 20:36
编辑框改热键框模块源码 [修改]
作者: jinrong0544    时间: 2023-3-24 21:09
        感谢分享,很给力!~
作者: A13ZZ    时间: 2023-3-25 08:20

作者: 土豆要不    时间: 2023-3-25 10:20
标题: ++
6666666666666666666
作者: nihao3312    时间: 2023-3-25 12:30
好东西 求回复
作者: り铕靺╮铕樣﹏    时间: 2023-3-25 13:40
支持开源~!感谢分享
作者: 该死dē蚊子    时间: 2023-3-25 19:04
感谢分享,学习下。
作者: tapdream    时间: 2023-3-25 19:47
下载下来看看怎么样
作者: yqdyqzdstrm    时间: 2023-3-25 20:18
这个还可以!!!
作者: wdaqmmm    时间: 2023-3-25 20:26
6                                                1
作者: seven7c    时间: 2023-3-25 20:31
RE: 编辑框改热键框模块源码 [修改]

作者: dx530    时间: 2023-3-26 01:09
        感谢分享,很给力!~
作者: lizooo    时间: 2023-3-26 08:09
哇,这个是真实用,不收藏一份绝对会后悔!感谢楼主的无私分享
作者: nirunwu    时间: 2023-3-26 12:06
66666666666666666
作者: quary    时间: 2023-3-26 13:01
谢谢楼主分享!!!
好人一生平安!!!

作者: wqw666    时间: 2023-3-26 13:45
谢谢楼主分享!!!
作者: jnjcsh    时间: 2023-3-26 19:26
6666666666666666666666
作者: 易難為易    时间: 2023-3-26 20:20
感谢分享,很给力!~
作者: 威特尤索    时间: 2023-3-26 20:28

感谢分享,很给力!~
作者: benha1    时间: 2023-3-26 20:51
看看学习一下~




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4