1. 程式人生 > >QT windows開發環境搭建

QT windows開發環境搭建

1、簡介

Qt 是一個著名的跨平臺C++圖形使用者介面應用程式開發框架。它不僅僅是一個 GUI庫,更像一個“一站式”的解決方案,你不再需要研究 STL,不再需要到處去找解析 XML、連線資料庫、訪問網路的各種第三方庫,因為 Qt 自己內建了這些技術。

2、相關連結

官網:https://www.qt.io/
官方下載連結:
http://download.qt.io/
Qt下載連結:
http://download.qt.io/archive/qt/
Qt Creator下載連結:
http://download.qt.io/archive/qtcreator/
Qt VS開發外掛下載連結:

http://download.qt.io/archive/vsaddin/
Qt官方文件連結:
http://doc.qt.io/

3、Qt、Qt Creator、Visual Studio、與編譯器之間的關係

Qt相當於一個封裝好的 SDK。
Qt Creator相當於一個 IDE,與 Visual Studio類似的不同的產品而已。
IDE可以使用指定的編譯器與偵錯程式來編譯及除錯程式。

Visual Studio預設使用微軟的 - Microsoft Visual C++ Compiler(cl.exe)來編譯程式,使用
Debugging Tools for Widows(cdb.exe)來除錯程式。

Qt Creator可以使用微軟的編譯器與偵錯程式來開發,也可以使用 MinGW(GCC)來編譯,使用 GDB作為偵錯程式。

總結一下,Qt在 Windows下的開發環境的幾種方案:

IDE 編譯器 偵錯程式
VS cl cdb
Qt Creator cl cdb
Qt Creator MinGW(gcc) gdb

注意:當使用 vs來開發qt應用程式的時候,需要安裝一個官方的 VS開發外掛,上面有連結。

4、關於Qt Quick、QML

Qt Quick是Qt 4.7 中推出的一項新技術(QML的框架),讓使用者可以使用 QML更快速高效地開發應用程式,旨在讓UI與後臺邏輯最大化的分離,一統桌面端和移動端。
QML是 Qt Quick開發框架中支援的一種指令碼語言,功能類似 html + css + js的結合,具體表現有差異而已。

import QtQuick 2.4
import QtQuick.Window 2.2
import QtQuick.Controls 1.2

/* 這是一個多行註釋,和c語言的一樣 */
// 當然這是一個單行註釋

Window {

    id:root;        // Window元素的id,應該保證在這個qml檔案中名字唯一
    visible: true;
    width: 460;     // 直接指定視窗的寬度
    height: 288;    // 直接指定視窗的高度

    Image {
        id: bg;
        width: parent.width;            // 圖片的寬度依賴父視窗的寬度
        height: parent.height;          // 圖片的高度依賴父視窗的高度
        source: "qrc:///images/sky.jpg" // 引用一張圖片
    }

    Image {
        id: rocket;
        x: (parent.width - width) / 2;  // 圖片位置水平居中
        y: 40;                          // 圖片位置距離父視窗40
        source: "qrc:///images/rocket.png";
    }

    Text {
        // 沒有指定id,即這是一個匿名元素
        y:rocket.y + rocket.height + 20;                    // 文字頂部距離rocket圖片底部20
        anchors.horizontalCenter: parent.horizontalCenter   // 設定文字水平居中
        text: qsTr("火箭發射!");                          // 設定文字顯示的文字
        color: "#ff2332";                                   // 設定文字顏色
        font.family: "楷體";                                // 設定字型為楷體
        font.pixelSize: 30;                                 // 設定文字大小
    }
}
// from : https://www.cnblogs.com/csulennon/p/4485768.html

Qt Quick Application 是QML和C++的結合,比較適合做介面類的東西。
Qt Widgets Application 是傳統的 c++框架。

5、Qt各種版本之間的差異

6、VS + VS開發外掛 + Qt 環境搭建

  • 安裝相應版本的 Visual Studio

    我安裝的 vs2013,這個不介紹了

  • 下載 Qt,安裝

    我下載的版本是: http://iso.mirrors.ustc.edu.cn/qtproject/archive/qt/5.3/5.3.2/qt-opensource-windows-x86-msvc2013_64_opengl-5.3.2.exe
    大家可以根據需要下載,預設安裝即可。
    我的安裝路徑是:
    C:\Qt\Qt5.3.2
    C:\Qt\Qt5.3.2\5.3\msvc2013_64_opengl
    注意:如果你要生成32位的應用程式的話,還是需要再下載一個32位的版本: http://iso.mirrors.ustc.edu.cn/qtproject/archive/qt/5.3/5.3.2/qt-opensource-windows-x86-msvc2013_opengl-5.3.2.exe
    安裝的時候注意修改一下目錄,比如C:\Qt\Qt5.3.2_x86

  • 下載 VS開發外掛,安裝

    我下載的版本是:http://iso.mirrors.ustc.edu.cn/qtproject/archive/vsaddin/qt-vs-addin-1.2.4-opensource.exe
    預設安裝

  • 設定

    待上面3個都成功安裝完畢後,開啟 vs2013,會發現選單欄多了一個QT5的選單。
    單機此選單,選擇Qt Options,在彈出的對話方塊中選擇Qt Versions選項卡,單擊右側的Add按鈕,會彈出新建設定 Qt版本的對話方塊,在Version name中輸入版本名稱(可隨意),Path中輸入 Qt安裝的位置。
    我設定的是:
    Version name : msvc2013_64_opengl_532
    Path : C:\Qt\Qt5.3.2\5.3\msvc2013_64_opengl

  • 新建測試工程

    設定完畢後,在 vs的選單中選擇新建專案。會發現在專案模版中多了一個 Qt5 Project的選項,在右側選擇Qt Application,填寫專案名稱及位置,確定,在專案嚮導中有一個專案設定,你可以選擇你需要的元件,比如 Quick、QML、Newwork、OpenGL、SQL、WebKit、XML。點選完成,就建立了一個預設的空的 Qt專案了。

  • 編譯執行

    Qt專案預設輸出目錄為當前目錄的 Win32\DebugWin32\Releasex64\Debugx64\Release
    如果你編譯時,出現Qt 模組計算機型別“x64”與目標計算機型別“X86”衝突類似的錯誤,
    解決方法是在當前工程上右擊,選擇Qt Project Settings,在Properties 選項卡中的Version 一欄中選擇上面設定的對應的 Version name
    並且根據 Qt的版本,在工程屬性的平臺中選擇正確的項(Win32 or x64),
    還要在 連結器-高階-目標計算器 中選擇正確的項(MachineX86 (/MACHINE:X86) or MachineX64 (/MACHINE:X64))
    注意:編譯32位和64位的應用程式時,需要重新選擇相應的 Qt版本,即對應的 Version name,前提是你的計算機上同時安裝了32位和64位的 Qt。
    打包:
    在開始選單處,選擇相應版本的 Qt命令列工具 Qt 5.3 for Desktop (MSVC 2013 OpenGL)
    切換到打包目錄中,(比如 ***\Packet\),先將應用程式拷貝到其中(比如叫 QtDemo.exe),
    在命令列中輸入:
    windeployqt QtDemo.exe 就會將所有 Qt依賴項全拷貝到打包目錄中。