1. 程式人生 > >QT開發(十七)——QWT簡介

QT開發(十七)——QWT簡介

Qt QWT

QT開發——QWT簡介

一、QWT簡介

QWT,即Qt Widgets for Technical Applications,是一個基於LGPL版權協議的開源項目, 可生成各種統計圖,是為具有技術專業背景的程序提供GUI組件和一組實用類,其目標是以基於2D方式的窗體部件來顯示數據, 數據源以數值,數組或一組浮點數等方式提供, 輸出方式可以是Curves(曲線),Slider(滾動條),Dials(圓盤),Compasses(儀表盤)等等。QWT工具庫是基於Qt開發的,繼承了Qt的跨平臺特性。
源碼下載地址:https://sourceforge.net/projects/qwt/files/qwt/
技術分享圖片

二、QWT在Linux環境的安裝

1、相關環境

Linux發行版:RHEL7.3
Qt版本:Qt 4.8.6
QWT版本:QWT6.1.3

2、QWT源碼目錄

designer目錄:QWT插件的源碼
doc目錄:幫助文檔
example目錄:QWT簡單例子的源碼
src目錄:QWT源碼
textengines目錄:數學指標語言的文本驅動引擎代碼
playground目錄:QWT開發中探索、測試新特性的模塊
qwt.pro:工程文件
qwtconfig.pri:配置文件

3、安裝目錄

QWT安裝後的目錄如下:
doc:包括html和articles兩個目錄,存放qwt的說明文檔,其中html目錄就是qwt官方網頁的本地版本
features:?qwt的安裝配置文件

include:所有qwt控件的頭文件都在這裏
lib:核心部分,由於默認配置文件是將qwt庫編譯成動態庫,因此本目錄下是4個so文件(實際上只有一個庫文件,另外三個是軟連接)
plugins:?Qt Designer的插件,用於在Designer或Creator設計器中將qwt顯示在左側的控件列表中

4、配置

Qwtconfig.pri配置文件中配置:

#版本配置
QWT_VER_MAJ      = 6
QWT_VER_MIN      = 1
QWT_VER_PAT      = 3
QWT_VERSION      = $${QWT_VER_MAJ}.$${QWT_VER_MIN}.$${QWT_VER_PAT}

# Install paths  安裝路徑配置
QWT_INSTALL_PREFIX = $$[QT_INSTALL_PREFIX]
#Linux系統安裝路徑
unix {
    QWT_INSTALL_PREFIX    = /usr/local/Trolltech/qwt-$$QWT_VERSION
    # QWT_INSTALL_PREFIX = /usr/local/Trolltech/qwt-$$QWT_VERSION-qt-$$QT_VERSION
}
#Windows系統安裝路徑
win32 {
    QWT_INSTALL_PREFIX    = C:/Qwt-$$QWT_VERSION
    # QWT_INSTALL_PREFIX = C:/Qwt-$$QWT_VERSION-qt-$$QT_VERSION
}
#doc、include、lib目錄安裝路徑
QWT_INSTALL_DOCS      = $${QWT_INSTALL_PREFIX}/doc
QWT_INSTALL_HEADERS   = $${QWT_INSTALL_PREFIX}/include
QWT_INSTALL_LIBS      = $${QWT_INSTALL_PREFIX}/lib

#designer插件安裝路徑
QWT_INSTALL_PLUGINS   = $${QWT_INSTALL_PREFIX}/plugins/designer

#features安裝路徑
QWT_INSTALL_FEATURES  = $${QWT_INSTALL_PREFIX}/features
# QWT_INSTALL_FEATURES  = $$[QT_INSTALL_PREFIX]/features

#編譯鏈接成動態鏈接庫或是靜態鏈接庫,如果QwtDll有效,為動態鏈接庫
QWT_CONFIG           += QwtDll

QWT_CONFIG       += QwtPlot
QWT_CONFIG     += QwtWidgets
QWT_CONFIG     += QwtSvg
#依賴於QtOpenGL
QWT_CONFIG     += QwtOpenGL
#是否支持QwtMathMl, 是Qwt統計數據的數學庫支持
#QWT_CONFIG     += QwtMathML
QWT_CONFIG     += QwtDesigner

win32 {
    QWT_CONFIG     += QwtDesignerSelfContained
}

#是否編譯示例程序,默認不編譯
#QWT_CONFIG     += QwtExamples
#playground模塊,默認不編譯
#QWT_CONFIG     += QwtPlayground

macx:!static:CONFIG(qt_framework, qt_framework|qt_no_framework) {

    QWT_CONFIG += QwtFramework
}  

unix {
    #QWT_CONFIG     += QwtPkgConfig
}

5、生成Makefile文件

命令行執行:
[user@localhost qwt-6.1.3]$qmake qwt.pro
報錯信息如下:
[user@localhost qwt-6.1.3]$ qmake qwt.pro
QMAKESPEC has not been set, so configuration cannot be deduced.
Error processing project file: qwt.pro
解決方案:
export QMAKESPEC=/usr/local/Trolltech/Qt-4.8.6/mkspecs/linux-g++
再次執行:
[user@localhost qwt-6.1.3]$qmake qwt.pro

6、編譯、安裝

編譯:make
安裝:sudo make install

7、QWT控件插件的安裝

qwt-6.1.3/designer/plugins/designer/libqwt_designer_plugin.so是QWT控件的動態鏈接庫。需要把libqwt_designer_plugin.so導入QtCreater或者Designer的控件目錄就可以在QtCreater和Designer中使用QWT的控件。
拷貝libqwt_designer_plugin.so到QtCreator控件目錄:
sudo cp libqwt_designer_plugin.so /usr/local/Trolltech/qtcreator-2.8.1/bin/plugins/designer/
拷貝libqwt_designer_plugin.so到Designer控件目錄:
sudo cp libqwt_designer_plugin.so /usr/local/Trolltech/Qt-4.8.6/plugins/designer/

8、結果查看

使用QtCreator新建一個工程,打開Designer模式,結果如下:
技術分享圖片
安裝成功。

QT開發(十七)——QWT簡介