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開發外掛下載連結:
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\Debug
、Win32\Release
、x64\Debug
、x64\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依賴項全拷貝到打包目錄中。