由于导师项目的需要,需要画图,二维+三维。三维图我用的是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. Swift中方法(method)所谓的lazy绑定简介

    我们知道在ruby之类的动态语言中对象方法可以先从类中预先抽取,然后再应用到某个具体对象上.这称为无绑定的method对象,也可以叫做lazy绑定. 下面举个例子: irb(main):004:0&g ...

  2. KVO and Swift

    不像Objective-c中的类,Swift类对于KVO并没有原生的支持,不过你可以在类型安全的前提下使用属性观察者轻松的完成相同的目标. 不管如何,从NSObject类派生出的类是支持KVO的,如果 ...

  3. Linux动态频率调节系统CPUFreq之二:核心(core)架构与API

    上一节中,我们大致地讲解了一下CPUFreq在用户空间的sysfs接口和它的几个重要的数据结构,同时也提到,CPUFreq子系统把一些公共的代码逻辑组织在一起,构成了CPUFreq的核心部分,这些公共 ...

  4. 全文检索概念,Lucene大致结构

    1.1 常见的全文检索 1) 在window系统中,可以指定磁盘中的某一个位置来搜索你想要得到的东西. 2) 在myeclipse中,点击Help->Help Contents,可以利用搜索功能 ...

  5. Java学习之栈和堆的区别

    在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配. 当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配 ...

  6. 如何向android studio中导入第三方类库

    下面分两种情况介绍一下如何导入第三方类库. 1.对于jar的类库,直接复制进libs目录,然后把jar复制进去,然后File->Project Structure,然后选中主module的名称, ...

  7. NET中小型企业级项目开发架构系列(一)

    前端时间我们开发了基于Net的一套搭建sprint.NET+NHibernate+MVC+WCF+EasyUI等中小型企业级系统开发平台,现在把整个开发过程中的步步进展整理出来和大家分享,这个系列可能 ...

  8. [java面试]javascript中dom取值问题radio名字一样归属于同一个组,求点击的是哪一个

    题目描述: 看如下的html文件,里面定义了一些radio类型的元素,请完成parse()函数的内容,要求能够弹出对话框提示当前选中的是第几个单选框. </pre><pre code ...

  9. J2EE学习从菜鸟变大鸟之八 企业级项目开发的思考

    什么是企业级项目开发 "企业级项目".企业级项目开发,Java也是企业级项目开发,这个我们到处说.听,每天被我们挂在嘴边,可是到底什么项目才算是"企业级"?自己 ...

  10. Swift基础之OC文件调用Swift代码(在上次的基础上写的)

    前两天刚写过Swift调用OC,今天在原来的基础上,实现OC调用Swift. 首先,创建一个OneSwiftFile.swift文件,创建一个继承于NSObject的类(这个地方你可以自己选择继承的父 ...