首页| 论坛| 消息

标题:Qt开源作品34-qwt无需插件源码
作者:liudianwu
日期:2020-06-16 08:44
内容:

## 一、前言
QWT,全称是Qt Widgets for Technical Applications,是一个基于LGPL版权协议的开源项目,可生成各种统计图。为具有技术专业背景的程序提供GUI组件和一组实用类,其目标是以基于2D方式的窗体部件来显示数据, 数据源以数值,数组或一组浮点数等方式提供,输出方式可以是Curves(曲线),Slider(滚动条),Dials(圆盘),Compasses(仪表盘)等等。该工具库基于Qt开发,所以也继承了Qt的跨平台特性。
在Qt做项目中,如果需要用到曲线的话,很可能会用到qwt组件,但是很多初学者苦于编译的种种烦恼,比如默认qwt是插件的形式提供的,需要编译成你对应编译器的插件动态库,然后引入头文件链接动态库再用,甚至有些初学者想直接集成到qtcreator中,发现怎么都搞不定,烦啊,搞得一点兴趣都没有了,其实默认Qt的安装包自带的mingw编译器,很多人默认选择的也是mingw编译器的Qt,而安装包中的Qtcreator呢又是msvc编译器编译的,因为版本不对所以无法集成,那怎么办呢,用户其实很多时候只需要new一个类出来放对应的布局或者窗体上即可,然后调用对应的方法来设置和处理,根本不想这么复杂,于是抽点时间将qwt中的所有控件的完整源码抽取出来,直接源码集成到你的项目,在你的项目只需要引入pri文件即可,永远不要再去搞烦人的编译插件了。
## 二、代码思路
```c++
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets printsupport concurrent
DEFINES += QWT_NO_SVG QWT_NO_OPENGL
INCLUDEPATH += $$PWD
HEADERS += \
$$PWD/qwt.h \
$$PWD/qwt_abstract_legend.h \
$$PWD/qwt_abstract_scale.h \
$$PWD/qwt_abstract_scale_draw.h \
$$PWD/qwt_abstract_slider.h \
$$PWD/qwt_analog_clock.h \
$$PWD/qwt_arrow_button.h \
$$PWD/qwt_clipper.h \
$$PWD/qwt_color_map.h \
$$PWD/qwt_column_symbol.h \
$$PWD/qwt_compass.h \
$$PWD/qwt_compass_rose.h \
$$PWD/qwt_compat.h \
$$PWD/qwt_counter.h ..


#1 [gospite 06-16 14:06]
高级!
#2 [天下无雪 06-17 12:08]
这个好,支持

回复 发表
主题 版块