由于导师项目的需要,需要画图,二维+三维。三维图我用的是Qt+opengl,二维图我决定使用qwt工具库来加快我的项目进展,毕竟还有期末考试。关于Qt+opengl的使用有时间的话以后再介绍。

        首先我们说说QWT是什么?下面是百度百科的介绍:
        QWT,全称是Qt Widgets for Technical Applications,是一个基于LGPL版权协议的开源项目, 可生成各种统计图。它为具有技术专业背景的程序提供GUI组件和一组实用类,其目标是以基于2D方式的窗体部件来显示数据, 数据源以数值,数组或一组浮点数等方式提供,
输出方式可以是Curves(曲线),Slider(滚动条),Dials(圆盘),Compasses(仪表盘)等等。该工具库基于Qt开发,所以也继承了Qt的跨平台特性。

安装环境:

      win7系统

编译:

        如果下载上述的已编译文件qwt6.1,则不需要这一步。我曾经遇到的问题:我下载了qwt源码,然后用QtCreator打开项目,进行编译,经过十分钟左右编译完成,然后将生成的相关文件放入指定位置(这一步在下面有介绍),然后发现,qwt插件不能用。有的人可能会出现,在Qt Designer中可以显示qwt插件,但是在QtCreator中无法显示,这是因为使用不同编译器编译的结果。所以说,最好使用vs编译器,而不是使用mingw编译器(尽管mingw在语言支持上更好用)!为了避免上面可能出现的问题,你最好还是下载上面我给出的已经编译好的qwt文件。

配置:

       下载或则编译好qwt文件后,需要做的工作如下(以我给出的编译好的qwt文件为例,我的QtCreator的安装目录为:D:\Qt\Qt5.3.0\5.3\msvc2010_opengl):
具体目录如下图:

1、qwt文件目录:

2、Qt安装目录:

操作如下:

1、将D:\QWT\lib中qwt.dll、qwtd.dll文件拷贝到D:\Qt\Qt5.3.0\5.3\msvc2010_opengl\bin文件夹中。
2、将D:\QWT\lib中qwt.lib、qwt.lib文件拷贝到D:\Qt\Qt5.3.0\5.3\msvc2010_opengl\lib文件夹中。
3、将D:\QWT\designer\plugins\designer中的qwt_designer_plugin.dll和qwt_designer_plugin.lib拷贝到D:\Qt\Qt5.3.0\Tools\QtCreator\bin\plugins\designer目录下。
4、将D:\QWT\src中的所有.h文件都放入一个新建名为QWT的文件夹中,然后将这个文件夹拷贝到D:\Qt\Qt5.3.0\5.3\msvc2010_opengl\include

测试:


打开QtCreator,建一个qt应用程序,打开.ui文件,你就会发现qwt控件:

这时,你向窗口中拖入两个qwt控件,如上图右边所示,然后运行程序,你就发现错误,这时你需要在.pro文件中添加如下代码:
INCLUDEPATH +=D:\Qt\Qt5.3.0\5.3\msvc2010_opengl\include\QWT
LIBS+= -lqwtd

注意上面的路径与你自己的安装目录有关!这里使用的是debug方式,如果是release方式,将lqwtd改为lqwt即可。BTW,一般来说名称后面带d的都是与debug有关的,没带d的与release有关,这些文件在qt的动态链接库(.dll)文件中非常常见。

这时再运行程序就会得到正确结果:

原文:http://blog.csdn.net/tengweitw/article/details/41775545

作者:nineheadedbird

【Qt编程】QWT在QtCreator中的安装与使用的更多相关文章

  1. Qt Sqlite qwt 发布过程中碰到的问题runtime error

    qt版本:4.8.0 qwt版本:6.1.2 使用dll show检测缺少的dll,或者笨一点的方法,点击运行差什么找什么放进去: 左上显示exe调用哪些dll,右边是dll又再次调用啦哪些dll: ...

  2. Qt Creator 预览QtCreator中的界面

    当在QtCreator界面编辑器中放置好布局和控件之后,组合键 Alt + Shift + R 可以实现预览功能.                       也可以通过以下方式更改快捷键: 具体路径 ...

  3. 【Qt编程】基于QWT的曲线绘制及图例显示操作

    在<QWT在QtCreator中的安装与使用>一文中,我们完成了QWT的安装,这篇文章我们讲讲基础曲线的绘制功能. 首先,我们新建一个Qt应用程序,然后一路默认即可.这时,你会发现总共有: ...

  4. 【Qt编程】基于QWT的曲线绘制及图例显示操作——有样点的实现功能

    在<QWT在QtCreator中的安装与使用>一文中,我们完成了QWT的安装,这篇文章我们讲讲基础曲线的绘制功能. 首先,我们新建一个Qt应用程序,然后一路默认即可.这时,你会发现总共有: ...

  5. Qt之Qwt学习之安装

    QWT+qtcreator 编译.安装使用 目录:一.Qwt简介 二.QWT编译 一.Qwt简介 QWT:Qt Widgets for Technical Applications,是开源的2D绘图库 ...

  6. 在Ubuntu18.04中QT编程的环境构建(转)

    在Ubuntu18.04中QT编程的环境构建 原点分析 百家号06-2110:14 如果说QT大家觉得陌生的话,那么 Windows 早年推出的C++图形用户界面的应用程序开发框架MFC,应该是耳熟能 ...

  7. Visual Studio下Qt编程中对中文的处理

    Visual Studio下Qt编程中对中文的处理 本文为原创文章,原文地址http://www.cnblogs.com/c4isr/p/qt_develop_in_vs.html Visual St ...

  8. 在windows下的QT编程中的_TCHAR与QString之间的转换

    由于在windows下的QT编程中,如果涉及到使用微软的API,那么不可避免使用_TCHAR这些类型,因此在网上查了一下,其中一个老外的论坛有人给出了这个转换,因此在这里做一下笔记 : )#ifdef ...

  9. C++框架_之Qt的开始部分_概述_安装_创建项目_快捷键等一系列注意细节

    C++框架_之Qt的开始部分_概述_安装_创建项目_快捷键等一系列注意细节 1.Qt概述 1.1 什么是Qt Qt是一个跨平台的C++图形用户界面应用程序框架.它为应用程序开发者提供建立艺术级图形界面 ...

随机推荐

  1. ICL Auto Vectorization

    简介 此文简单介绍如何使用intel c++编译器实现向量化加速. 全文如下安排: base : 待优化的源代码. vectorization : 第一个向量化版本. aligned : 内存对其对向 ...

  2. Swift中如何化简标准库中冗长的类实例初始化代码

    可能有些童鞋并不知道,在Swift中缩写点符号对于任何类型的任何static成员都有效. 我们实际写一个例子看一下: import UIKit class CFoo{ static let share ...

  3. Android通过WebService实现图片的上传和下载(一)

    这篇文章将讲解Android如果通过访问WebService接口实现图片的上传和下载,当然这不但需要大家懂得Android还要懂得WebService技术,安卓属于客户端,而webservice则属于 ...

  4. DJango内建模板转向jinja2的小脚本

    import re,os def org(path=os.getcwd(),fs=None,preview=True): fs = fs or [] for root,dirs,files in os ...

  5. 为什么函数式编程可以没有while?

    以前想不通,今天在写代码时不知怎么的,偶然就发现了答案.. 比如说把某个字符串s中所有"00"及更长的'00'统统换为'0'.最后结果中不能包含'00'. 00001100--&g ...

  6. Android开发之Intent.Action 各种Action的常见作用

    1 Intent.ACTION_MAIN String: android.intent.action.MAIN 标识Activity为一个程序的开始.比较常用. Input:nothing Outpu ...

  7. Matlab:如何读取CSV文件以及如何读取带有字符串数据项的CSV文件

    CSV,逗号分开的文件,如果能快速的读取这些文件中的数据,无疑会帮助我们解决很多问题. 1. 只有数据的CSV文件,CSV file that includes only numbers. As an ...

  8. 14 Fragment 碎片总结

    Fragment 碎片 一, Fragment是什么? Android 3.0以后出现的 Api11 以上 Activity的组成部分 Fragment(小的Activity) Fragment可以显 ...

  9. iOS的settings bundle中开关按钮(Toggle Switch)取不到值的问题

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 在Xcode7.2中设置App的settings bundle ...

  10. springMVC源码分析--国际化LocaleResolver(一)

    springMVC给我们提供了国际化支持,简单来说就是设置整个系统的运行语言,然后根据系统的运行语言来展示对应语言的页面,一般我们称之为多语言.springMVC国际化机制就是可以设置整个系统的运行语 ...