查看完整版本: [-- Qt编写自定义控件插件开放动态库dll使用(永久免费) --]

QTCN开发网 -> Qt 作品展 -> Qt编写自定义控件插件开放动态库dll使用(永久免费) [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

liudianwu 2019-04-10 22:16

Qt编写自定义控件插件开放动态库dll使用(永久免费)

一、前言
这套控件陆陆续续完善了四年多,目前共146个控件,除了十几个控件参考网友开源的代码写的,其余全部原创,在发布之初就有打算将动态库开放出来永久免费使用,在控件比较完善的今天抽了半天时间编译了多个qt版本的动态库,目前已经有26个版本,其中包括了linux版本,和头文件一起打包放在百度网盘。

二、控件介绍
1. 超过146个精美控件,涵盖了各种仪表盘、进度条、进度球、指南针、曲线图、标尺、温度计、导航条、导航栏,flatui、高亮按钮、滑动选择器、农历等。远超qwt集成的控件数量。
2. 每个类都可以独立成一个单独的控件,零耦合,每个控件一个头文件和一个实现文件,不依赖其他文件,方便单个控件以源码形式集成到项目中,较少代码量。qwt的控件类环环相扣,高度耦合,想要使用其中一个控件,必须包含所有的代码。
3. 全部纯Qt编写,QWidget+QPainter绘制,支持Qt4.6到Qt5.12的任何Qt版本,支持mingw、msvc、gcc等编译器,支持任意操作系统比如windows+linux+mac+嵌入式linux等,不乱码,可直接集成到Qt  Creator中,和自带的控件一样使用,大部分效果只要设置几个属性即可,极为方便。
4. 每个控件都有一个对应的单独的包含该控件源码的DEMO,方便参考使用。同时还提供一个所有控件使用的集成的DEMO。
5. 每个控件的源代码都有详细中文注释,都按照统一设计规范编写,方便学习自定义控件的编写。
6. 每个控件默认配色和demo对应的配色都非常精美。
7. 超过130个可见控件,6个不可见控件。
8. 部分控件提供多种样式风格选择,多种指示器样式选择。
9. 所有控件自适应窗体拉伸变化。
10.  集成自定义控件属性设计器,支持拖曳设计,所见即所得,支持导入导出xml格式。
11. 自带activex控件demo,所有控件可以直接运行在ie浏览器中。
12. 集成fontawesome图形字体+阿里巴巴iconfont收藏的几百个图形字体,享受图形字体带来的乐趣。
13. 所有控件最后生成一个dll动态库文件,可以直接集成到qtcreator中拖曳设计使用。

三、SDK下载

- SDK下载链接:https://pan.baidu.com/s/1A5Gd77kExm8Co5ckT51vvQ 提取码:877p
- 下载链接中包含了各个版本的动态库文件,所有控件的头文件,使用demo,自定义控件+属性设计器。
- 自定义控件插件开放动态库dll使用(永久免费),无任何后门和限制,请放心使用。
- 目前已提供26个版本的dll,其中包括了qt5.12.3 msvc2017 32+64 mingw 32+64 的。
- 不定期增加控件和完善控件,不定期更新SDK,欢迎各位提出建议,谢谢!
- widget版本(QQ:517216493)qml版本(QQ:373955953)三峰驼(QQ:278969898)。
- 涛哥的知乎专栏 Qt进阶之路 https://zhuanlan.zhihu.com/TaoQt
- 欢迎关注微信公众号【高效程序员】,C++/Python、学习方法、写作技巧、热门技术、职场发展等内容,干货多多,福利多多!

四、使用方法
1:快速预览所有控件方法
第一步:前提是qt版本、编译器类型、编译器版本、编译器位数必须完全一致。
第二步:找到qt安装目录的库所在的bin目录,同级有个plugins文件夹,plugins文件夹下有个designer目录,将对应插件文件例如 qt_5_7_1_msvc2013_32.dll 放到此目录即可。
第三步:双击bin目录下的designer.exe,打开提供的demo.ui,即可看到效果。或者新建个空白UI然后从左边的控件栏里面拖动过去。

2:动态库使用方法
第一步:插件法的自定义控件使用,务必保证Qt版本+编译器+位数完全一致。
第二步:将对应的quc.dll和quc.lib(MSVC编译器才有)集成到项目中。
第三步:使用到哪个控件,只需要将对应控件的头文件集成到项目中即可。
第四步:项目的pro文件加入代码
  1. INCLUDEPATH += $PWD/sdk
    CONFIG(release, debug|release){
    LIBS        += -L$PWD/sdk/ -lquc
    } else {
    unix {LIBS  += -L$PWD/sdk/ -lquc}
    else {LIBS  += -L$PWD/sdk/ -lqucd}
    }

说明:本sdkdemo下的dll是MSVC2013 32位+Qt5.7.1版本的。可自行替换成自己编译器编译出来的文件。

五、效果图
[attachment=20439][attachment=20440][attachment=20441][attachment=20122][attachment=20123][attachment=20121]


351887550 2019-04-10 22:46
前排围观 刘大佬

玖零儛 2019-04-11 08:40
前排感谢大佬,暂时用不到先码一个

crazy 2019-04-11 08:45
我顶

zhuling9026 2019-04-11 08:48
前排围观 点赞

lsyzsl 2019-04-11 08:49

笑颜 2019-04-11 08:51
何不把你那输入法也开源出来?藏着掖着干什么?  估计也参考了不少其他的吧

305750665 2019-04-11 08:57
     确实牛逼,当年秦始皇无意中得到了两颗长生不老药,他自己服了一颗,还剩一颗让我服,我都没服,就服你!

zhengtianzuo 2019-04-11 09:27
友商前来恭喜刘总 多发布 生意兴隆~~

九重水 2019-04-11 09:41
你终于明白了一件事:一个人的项目,只有做开源的才可以做大。你分分钟可以在GITHUB来一个项目,引大家过来参与及贡献,注明版权的使用:个人使用免费,公司使用请交钱。
而且逐步开放新控件,逐步开放老控件。

笑颜 2019-04-11 10:52
好像都搞错了  这个不是开源代码,只是提供dll使用,尴尬(我也搞错了)

啊这样子哒 2019-04-11 11:18
笑颜:[表情] 好像都搞错了  这个不是开源代码,只是提供dll使用,尴尬(我也搞错了)
 (2019-04-11 10:52) 

已经非常好了。dll已经开出来可以用了,而且还一口气整了这么多版本。勤劳哈哈哈

ch781609892 2019-04-11 11:42

clickto 2019-04-11 16:41
大佬牛b!!!

liuchangyin 2019-04-12 10:23

xdh873939316 2019-04-12 14:11

vaehate 2019-04-13 17:53

hanheyfon 2019-04-13 19:57
牛牛牛

colindemon 2019-04-14 18:24
代码没有完全公开啊,只有头文件和dll库,没有cpp文件,我想自己编译,望楼主给出cpp文件的源代码,感谢楼主。

liudianwu 2019-04-15 14:46
colindemon:代码没有完全公开啊,只有头文件和dll库,没有cpp文件,我想自己编译,望楼主给出cpp文件的源代码,感谢楼主。 (2019-04-14 18:24) 

是的,标题写的就是提供dll。不好意思!

fight傲 2019-04-17 16:50
前排围观 点赞

无心徘徊 2019-04-20 09:00
不错, 这种活很是费功夫

mengkun 2019-04-24 11:09
非常感谢!从您这学到不少东西!

liuyuanan 2019-04-24 20:30
   大师威武

luanl 2019-06-05 20:39
顶礼膜拜,大神。

naturalbest 2019-06-27 11:15
大佬,NavListView使用setItems一直看不到数据,请指教。msvc2015_32,Qt5.9.4

liudianwu 2019-06-27 13:46
naturalbest:大佬,NavListView使用setItems一直看不到数据,请指教。msvc2015_32,Qt5.9.4 (2019-06-27 11:15) 

//设置节点数据,格式 标题|父节点标题(父节点为空)|是否展开|提示信息|左侧图标
    QStringList items;
    items.append("主界面||0|正常|");
    items.append("地图监控|主界面|||0xf03e");
    items.append("视频监控|主界面|||0xf03d");
    items.append("设备监控|主界面|||0xf108");

    items.append("系统设置||0||");
    items.append("防区信息|系统设置|||0xf0e8");
    items.append("位置调整|系统设置|||0xf060");
    items.append("地图编辑|系统设置|||0xf03e");

    items.append("警情查询||0|120|");
    items.append("记录查询|警情查询|||0xf073");
    items.append("图像查询|警情查询|||0xf03e");
    items.append("视频查询|警情查询|||0xf03d");
    items.append("数据回放|警情查询|||0xf080");

    items.append("帮助文档||1|1024|");

    ui->navListView->setItems(items.join(","));

naturalbest 2019-06-27 14:17
liudianwu://设置节点数据,格式 标题|父节点标题(父节点为空)|是否展开|提示信息|左侧图标
    QStringList items;
    items.append("主界面||0|正常|");
    items.append("地图监控|主界面|||0xf03e") .. (2019-06-27 13:46) 

收到,可以啦,每个控件有使用Demo就好了。果然只看头文件还是有些不会用-_-||

哥依然潇洒 2019-09-25 14:49
版本,4.8.7 for linux gcc的没有,试了下4.7.0的so文件,不能用,

liudianwu 2019-09-25 15:06
naturalbest:收到,可以啦,每个控件有使用Demo就好了。果然只看头文件还是有些不会用-_-|| (2019-06-27 14:17) 

嗯,每个控件都对应了独立的使用demo,非常详细,这个需要购买才能获取的,不好意思!

liudianwu 2019-09-25 15:06
哥依然潇洒:[表情] 版本,4.8.7 for linux gcc的没有,试了下4.7.0的so文件,不能用, (2019-09-25 14:49) 

不提供的不好意思,Qt有几百个版本,实在太多了,没法安装了!

wwwq1q2com 2020-10-22 09:34
    

jazzmax 2023-01-04 14:22
牛人


查看完整版本: [-- Qt编写自定义控件插件开放动态库dll使用(永久免费) --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled