开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 23014|回复: 476
收起左侧

[易语言纯源码] 底层核心自由的信息框-SoftModalMessageBox

    [复制链接]
结帖率:100% (5/5)
发表于 2024-1-11 15:15:34 | 显示全部楼层 |阅读模式   广东省广州市
分享源码
界面截图:
是否带模块: 纯源码
备注说明: -
本帖最后由 7ian 于 2024-2-19 13:23 编辑

经常用信息框(messagebox)的都知道,按钮自定义文字不好搞,数量也是限制死死的
经常看到论坛修改个按钮标题都要先弹出信息框,再去hook拦截一下才修改,
深入了解下调用原理发现可以从根源修改,没必要这么麻烦
而且程序经常被人hook messagebox也是常有的,但是用下面这个别人hook messagebox就无效了
只能hook SoftModalMessageBox,跑题了

用这个信息框也很自由:TaskDialog-信息框-封装成类
https://bbs.125.la/forum.php?mod=viewthread&tid=14707700

但是,有的系统又不支持,于是查了一下资料,看到这篇文章:
https://blog.csdn.net/AcceZn/article/details/54670776

关系.png
关系2.png



里面介绍到我们常用的信息框都是调用到

MessageBoxWorker
最后 MessageBoxWorker

调用 SoftModalMessageBox
来显示数据的,所以为什么不直接调用它呢?


于是就封装了这个,分享下源码:

QQ截图20240204115646.png

QQ截图20240204113839.png

第1次更新(2024.01.10)
修复少按钮时【帮助按钮】无效问题
现在不管你前面多少按钮,【帮助按钮】都移到最后位置
第2次更新(2024.01.11)
第几个按钮就是返回几(看上图,不要什么错开位)
选中第几个按钮就是第几个(看上图,不要什么错开位)
第3次更新(2024.01.15)
自定义取消按钮位置(看上图)
自定义帮助按钮位置(看上图)
添加Unicode函数,支持韩文日文符号等(看上图)
优化返回值(看上图)
第4次更新(2024.02.04)
修复 信息框_自定义W 报错问题
添加参数【其它图标】支持更多图标(看上图)
添加更多常量(看上图)
【帮助按钮回调指针】添加多一个参数表示信息框的句柄(看上图)
支持最少只有一个按钮的情况

(关于自身程序图标调试正常,编译后不正常的还没解决,还有更多自定义图标也没空更,
如果帖子还能编辑,下次再更更多功能,比如信息框位置以及自定义图标等)


(要求不多,要点赞给点动力更新而已,不要钱

源码下载(收费5jb,希望版主不要关了):
游客,如果您要查看本帖隐藏内容请回复



给懒人用的,打包成模块下载(收费3jb,希望版主不要关了):
游客,如果您要查看本帖隐藏内容请回复


本来是想类似TaskDialog一样搞个自定义数据结构的,无奈没办法,换成内存了
感谢 @cool9411  提供技术支持


要个好评给个赞可以吗?

QQ截图20240111151945.png

补充内容 (2024-3-5 11:46):
第5次更新(2024.03.05):
修复默认不填取消按钮时无法生效右上角x关闭问题(看置顶评论)

评分

参与人数 71好评 +47 精币 +139 收起 理由
andywall + 1 支持开源~!感谢分享
戏雨流年 + 1 + 2 支持开源~!感谢分享
starfee + 1 + 2 YYDS~!这个真的是功德无量啊。。。
2023724748 + 1 + 2 支持开源~!感谢分享
ewake + 1 感谢分享,很给力!~
梦想ol + 1 + 3 支持开源~!感谢分享
lao4jiadian + 1 + 1 支持开源~!感谢分享
默念、 + 1 + 1 支持开源~!感谢分享
266558 + 1 + 2 感谢分享,很给力!~
是大哥吖 + 1 + 3 支持开源~!感谢分享
xo37 + 1 + 2 感谢付出、分享,mark一下
ghostw + 1 + 2 支持开源~!感谢分享
ddmap + 1 支持开源~!感谢分享
文西哥 + 1 + 3 开源精神必须支持~
jiujiuyabo + 1 + 2 支持开源~!感谢分享
Mainli + 1 感谢分享,很给力!~
ChinaSaga + 1 + 2 开源精神必须支持~
网络注册会员 + 1 + 1 支持开源~!感谢分享
niuyanpeng + 1 开源精神必须支持~
倾风听雨声 + 2 支持开源~!感谢分享
暮烟疏雨 + 1 支持开源~!感谢分享
wa690602724 + 1 感谢分享,很给力!~
mocha1 + 1 YYDS~!
聿聿 + 1 感谢分享,很给力!~
R0ot + 1 + 2 支持开源~!感谢分享
kimeti + 1 + 1 支持开源~!感谢分享
执骨哟 + 1 + 2 必须好评,感谢大佬的封装
benbenyw + 1 + 2 把原理讲这么清楚,你是真的想教会我
恶魔天尊 + 1 + 1 虽然不用,但是必须给你好评~~我不像其他人
FUYUEPC + 1 + 2 支持开源~!感谢分享
3266167 + 1 感谢分享,很给力!~
財財 + 1 感谢分享,很给力!~
445194820 + 1 + 2 支持开源~!感谢分享
吃干饭的锅 + 1 + 2 新技能已get√
mypursue + 1 感谢分享,很给力!~
光影魔术 + 1 + 1 开源精神必须支持~
keyi5566 + 1 感谢分享,很给力!~
紫旭 + 1 + 5 新技能已get√
无尘666 + 1 感谢分享,很给力!~
财付通消息 + 1 + 1 新技能已get√
orjg + 1 + 2 精彩文章希望继续努力
pj小黑屋 + 1 感谢分享,很给力!~
w589321 + 1 + 2 支持开源~!感谢分享
t176 + 1 感谢分享,很给力!~
望尘莫及 + 1 感谢分享,很给力!~
qweipuq + 1 感谢分享,很给力!~
1828902364 + 1 感谢分享,很给力!~
风雨3137 + 1 感谢分享,很给力!~
※逍遥游※ + 1 感谢分享,很给力!~
qiyuer + 1 感谢分享,很给力!~
Zźh926 + 1 感谢分享,很给力!~
ican8 + 1 感谢分享,很给力!~
quary + 1 + 2 新技能已get√
陈大奶么么哒 + 1 + 2 开源精神必须支持~
XXGL2005 + 1 感谢分享,很给力!~
云长爱读春秋 + 1 + 2 感谢分享,很给力!~
YzZA + 1 感谢分享,很给力!~
inat + 1 + 2 感谢分享,很给力!~
李泽勇2 + 1 + 3 支持开源~!感谢分享
wuqingg + 1 支持开源~!感谢分享
Bszk + 1 + 3 支持开源~!感谢分享
lao3 + 1 + 5 支持开源~!感谢分享
雨落无声 + 1 + 3 YYDS~!
空竹 + 1 + 3 YYDS~!
qq1056123185 + 1 + 2 行啊,大佬就是不一样~
道易有道 + 1 + 3 新技能已get√
赵小赵 + 1 + 2 支持开源~!感谢分享
maozaiba + 1 + 5 好人一生平安
福仔 + 1 + 20 新技能已get√
判断 + 1 + 2 开源精神必须支持~
pipi9 + 1 + 2 新技能已get√

查看全部评分


本帖被以下淘专辑推荐:

结帖率:100% (5/5)

签到天数: 3 天

 楼主| 发表于 2024-3-5 11:48:23 | 显示全部楼层   广东省广州市
本帖最后由 7ian 于 2024-3-5 11:51 编辑

第5次更新(2024.03.05):
修复默认不填取消按钮时无法生效右上角x关闭问题(看置顶评论)
QQ截图20240305114720.png
修改图片位置:别忘了 信息框_自定义 、信息框_自定义W 里都要修改
  
如果真 (帮助按钮位置 ≤ 0)
帮助按钮位置 = 10
是否有帮助按钮 = 帮助按钮位置 ≤ 按钮数量
如果真 (取消按钮位置 ≤ 0)
取消按钮位置 = 9
是否有取消按钮 = 取消按钮位置 ≤ 按钮数量


回复 支持 反对

使用道具 举报

结帖率:86% (12/14)

签到天数: 13 天

发表于 9 小时前 | 显示全部楼层   云南省昭通市
让 江小白 来看看帖子里藏了啥好东西~~~
回复 支持 反对

使用道具 举报

结帖率:92% (56/61)
发表于 昨天 18:45 | 显示全部楼层   浙江省金华市
本帖最后由 7ian 于 2024-2-19 13:23 编辑   经常用信息框(messagebox)的都知道,按钮自定义文字不好搞,数量也是限制死死的 经常看到论坛修改个按钮标题都要先弹出信息框,再去hook拦截一下才修改, 深入了解下调用原理发现可以从根源修改,没必要这么麻烦 而且程序经常被人hook messagebox也是常有的,但是用下面这个别人hook messagebox就无效了 只能hook SoftModalMessageBox,跑题了  用这个信息框也很自由:TaskDialog-信息框-封装成类 https://bbs.125.la/forum.php?mod=viewthread&tid=14707700  但是,有的系统又不支持,于是查了一下资料,看到这篇文章: https://blog.csdn.net/AcceZn/article/details/54670776       里面介绍到我们常用的信息框都是调用到  MessageBoxWorker 最后 MessageBoxWorker  调用 SoftModalMessageBox 来显示数据的,所以为什么不直接调用它呢?   于是就封装了这个,分享下源码:      第1次更新(2024.01.10): 修复少按钮时【帮助按钮】无效问题 现在不管你前面多少按钮,【帮助按钮】都移到最后位置 第2次更新(2024.01.11): 第几个按钮就是返回几(看上图,不要什么错开位) 选中第几个按钮就是第几个(看上图,不要什么错开位) 第3次更新(2024.01.15): 自定义取消按钮位置(看上图) 自定义帮助按钮位置(看上图) 添加Unicode函数,支持韩文日文符号等(看上图) 优化返回值(看上图) 第4次更新(2024.02.04): 修复 信息框_自定义W 报错问题 添加参数【其它图标】支持更多图标(看上图) 添加更多常量(看上图) 【帮助按钮回调指针】添加多一个参数表示信息框的句柄(看上图) 支持最少只有一个按钮的情况  (关于自身程序图标调试正常,编译后不正常的还没解决,还有更多自定义图标也没空更, 如果帖子还能编辑,下次再更更多功能,比如信息框位置以及自定义图标等)   (要求不多,要点赞给点动力更新而已,不要钱)  源码下载(收费5jb,希望版主不要关了):
回复 支持 反对

使用道具 举报

签到天数: 5 天

发表于 昨天 16:00 | 显示全部楼层   北京市北京市
666666666666666
回复 支持 反对

使用道具 举报

签到天数: 19 天

发表于 前天 16:24 | 显示全部楼层   山东省泰安市
学习一下 ,谢谢分享。
回复 支持 反对

使用道具 举报

签到天数: 5 天

发表于 3 天前 | 显示全部楼层   广东省韶关市
回复 支持 反对

使用道具 举报

结帖率:100% (3/3)

签到天数: 3 天

发表于 3 天前 | 显示全部楼层   四川省成都市
        支持开源~!感谢分享
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)

签到天数: 19 天

发表于 4 天前 | 显示全部楼层   广西壮族自治区来宾市

这个可以试试看
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)

签到天数: 26 天

发表于 5 天前 | 显示全部楼层   江西省赣州市
我才看到
回复 支持 反对

使用道具 举报

签到天数: 27 天

发表于 5 天前 | 显示全部楼层   安徽省安庆市
感谢分享!~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表