精易论坛

标题: 【EXUI】C++调用EXUI组件库,让经典UI重新散发活力 [打印本页]

作者: 阿龙    时间: 2022-2-28 00:02
标题: 【EXUI】C++调用EXUI组件库,让经典UI重新散发活力
易语言里优秀的自绘库并不多,EX_UI是比较知名的。前两天突发奇想,反正现在有时间我用C++把自己之前用EXUI做的小项目重新写一遍是不是可以提升运行效率并且减少报毒。
可是无论是官网还是群里都只有火山和易语言两种接口。

后来想到火山本身就是C++,想要用DLL接口一定是有头文件的,于是翻了一下火山的支持库,果然找到了头文件。
可是火山自己造了很多非基本类型的类,用起来及其生气。而且EXUI本身就是给易语言用的,所以接口里接受参数都是字节集。这下头大了,后来查了资料终于知道字节集就是byte数组。那简单了,于是自己定义了字节集类,封装了几个函数,果然可以将EXUI编辑器编辑的皮肤转成byte数组。




生成字体也没问题,byte数组和易语言火山字节集完全相同。剩下的就是将火山里的封装好的内容ctrlC+ctrlV再改改变量嘛。
动手封装了一些接口。





调用接口测试一下,完美运行。因为没有文档,回调函数的参数参考易语言EXUIAPI或者火山里的回调函数,不然传递参数数量和接收参数数量不同的话肯定要出问题的。

EXUI大家用的比较多的支持库,头文件源文件已经传到gitee上了,希望有时间各位水友能一起帮忙封装。
gitee地址:https://gitee.com/l80805777/exui_-c

仅仅想看一下的水友我也把文件打包好了。
回复一下,不做伸手党!



注意:
因为火山中有很多中文,复制时比较麻烦,索性没有改,MSVC现在支持中文变量和函数名。如果您是GCC,Clang-LLVM或其他编译器,那么您使用时请自行修改文件中的中文。
使用时和其他C模块一样仅仅导入头文件就可以 #include "ExuiHelp.h"










作者: 神女软件定制    时间: 2022-2-28 00:22
c++exui
作者: a524666979    时间: 2022-2-28 00:34
人才啊  虽然EXUI很好用 不过 确实 也是要费一些功夫的
作者: 芒果一号    时间: 2022-2-28 08:51
感谢分享
作者: hgy19880905    时间: 2022-2-28 08:55
您要查看本帖隐藏内
作者: 希纱    时间: 2022-2-28 10:21
哦操 , 你可真机智 , 学到了学到了
作者: JerryYan    时间: 2022-2-28 10:23
感谢大佬的分享!!
作者: xujianc    时间: 2022-2-28 12:19
666666666666666666666666
作者: 气质征服一切    时间: 2022-2-28 12:58
这个想法确实挺好的,但是c++不是也有很多界面库吗
作者: 阿龙    时间: 2022-2-28 13:08
气质征服一切 发表于 2022-2-28 12:58
这个想法确实挺好的,但是c++不是也有很多界面库吗

是的,我前段时间写了一个支持库转API,改成转C接口,皮肤啥的都不需要重新做,毕竟易语言写了一遍的项目用C重写工作量太大了,直接复制粘贴多好。再重新这一大堆xml都累死了,而且也就是做着玩,现在webui打的GUI满地找牙,能坚持做wingui本来就是兴趣爱好。
作者: Crb    时间: 2022-2-28 14:02
牛逼 需要带DLL吗
作者: blue2018    时间: 2022-2-28 17:02
exui模块在哪里下载?
作者: 青萱    时间: 2022-3-3 16:11
看看什么样子
作者: 阿龙    时间: 2022-3-3 16:16
Crb 发表于 2022-2-28 14:02
牛逼 需要带DLL吗

用exuidll.h就不需要,不然就要带
作者: 2742282581    时间: 2022-3-18 18:34
作者开个交流群啊
作者: 乡下佬陈    时间: 2022-3-28 18:05
所以大佬有没有打包给一个火山的模块
作者: 阿龙    时间: 2022-3-29 10:58
吾名先生 发表于 2022-3-28 18:05
所以大佬有没有打包给一个火山的模块

EXUI有火山版本
作者: 乡下佬陈    时间: 2022-3-29 12:39
alongyiyuan 发表于 2022-3-29 10:58
EXUI有火山版本

想要不带dll版本的,就写一个小程序还带的dll太麻烦了
作者: 镜oo月    时间: 2022-4-11 13:42
作者开个交流群啊
作者: cmd452631    时间: 2022-4-28 15:34
666666666666666666666666
作者: 王摇摆    时间: 2022-7-5 09:21
感谢分享
作者: dfklg    时间: 2022-7-23 22:12
感谢分享
作者: Lglz1027    时间: 2022-7-30 19:13
大佬 怎么联系你啊  仓库打不开
作者: 阿龙    时间: 2022-7-30 19:50
Lglz1027 发表于 2022-7-30 19:13
大佬 怎么联系你啊  仓库打不开

联系方式的话私
作者: 阿龙    时间: 2022-7-30 19:54
Lglz1027 发表于 2022-7-30 19:13
大佬 怎么联系你啊  仓库打不开

作者更新X64了库重新写了,库还没公开,常用的类都写完了,也封装了组件挂载,可以直接用设计器设计完保存后用CPP载入。cpp的话EXUI我不怎么用,就没继续完善,你有兴趣我把github分享给你,你自己pr顺便完善一下。
作者: 小云511    时间: 2022-10-30 03:07
66666666666666
作者: java22    时间: 2022-10-30 19:50
Mark,看反馈情况再说。。。
作者: なす随风ぬね    时间: 2022-12-7 22:06
感谢分享
作者: cutekitty    时间: 2023-3-11 21:46
阿龙 发表于 2022-7-30 19:54
作者更新X64了库重新写了,库还没公开,常用的类都写完了,也封装了组件挂载,可以直接用设计器设计完保存 ...

大佬,C++用什么自绘库啊
作者: xiaoyingryf    时间: 2023-7-12 14:19
要是能一键生成exui界面代码就更好了
作者: 阿龙    时间: 2023-7-12 16:04
cutekitty 发表于 2023-3-11 21:46
大佬,C++用什么自绘库啊

duilib uwp winui3 exduir,想要更专业直接上qt
作者: nz夕颜    时间: 2024-1-5 07:47
要是能一键生成exui界面代码就更好了
作者: xuzhide    时间: 2024-12-26 20:32
666,感谢分享
作者: xiaoliamg    时间: 2025-3-12 10:15
66666666666666




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