1、Qt簡介
Qt是一個跨平台的應用程序C++開發類庫,支持Windows、Linux、macOS等各種桌面平台,也支持iOS、Android等移動平台,還支持各種嵌入式系統,是應用非常廣泛的跨平台C++開發類庫。
Qt最早是由挪威的Haavard Nord和Eirik Chambe-Eng在1991年開始開發的,在1994年發布,並成立了一家名為Trolltech的公司。Trolltech公司在2008年被諾基亞公司收購,2012年,Qt被Digia公司收購,2014年從Digia公司拆分出來成立了獨立的Qt公司,專門進行Qt的開發、維護和商業推廣。
Qt的許可類型分為商業許可和開源許可,開源許可的Qt就已經包含非常豐富的功能模塊,可用於Qt學習和一般的應用程序開發。
2、Qt的下載與安裝
在Python中使用PyQt5編寫程序可以只安裝PyQt5,而不必安裝Qt的開發環境。但是為了使用Qt的IDE(即Qt Creator)的一些功能如UI窗體可視化設計、Qt類庫幫助信息查找、資源文件管理等,安裝Qt是有必要的。
從Qt官網可以下載最新版本的Qt軟件。Qt分為商業版和社區版,社區版就是具有開源許可協議的免費版本。Qt的版本更新比較快,這里是用的是Qt 5.12.2版本。
下載的Windows平台的Qt離線安裝文件是一個可執行文件,運行文件就可以開始安裝。安裝過程與一般的Windows應用程序安裝過程一樣,按照向導進行操作即可。
·使用MSVC(Microsoft Visual C++)編譯器的模塊,包括MSVC 2015 64-bit、MSVC 2017 32-bit和MSVC 2017 64-bit。若要安裝這幾個模塊,需要在計算機上預先安裝相應版本的Microsoft Visual Studio。這里無需安裝這些模塊。
·MinGW 7.3.0 32-bit編譯器模塊(根據計算機選擇32位或者64位)。MinGW(Minimalist GNU for Windows)是Windows平台上使用的GNU工具集的導入庫的集合。為了使用Qt的IDEas Qt Creator,必須安裝至少一個編譯器,可以選擇安裝這個模塊。
·用於UWP平台的編譯器模塊。UWP(Universal Windows Platform)是Windows 10中的編譯模塊,有不同CPU和編譯器類型的UWP模塊,這里無需安裝。
·用於Android平台的編譯模塊,包括Android x86、Android ARM64-v8a等,這是用於Android平台開發的編譯模塊,這里無需安裝。
·Sources是Qt C++類庫的源程序,這里無需安裝。
·Qt Charts是二維圖表模塊,用於繪制柱狀圖、餅圖、曲線圖等常用二維圖表。對於Python,有相應的PyQtChart包,選擇安裝此模塊,便於查看相關類的幫助信息。
·Qt Data Visualization是三維數據圖表模塊,用於數據的三維顯示,如散點的三維空間分布、三維曲面等。對於Python,有相應的PyQtDataVisualization包,選擇安裝此模塊,便於查看相關類的幫助信息。
·Qt Purchasing、Qt Virtual Keyboard、Qt WebEngine等其他模塊,這些模塊可以根據自己的需要選擇是否安裝。
·Qt Script(Deprecated)是腳本模塊,這是個已經過時的模塊,無須安裝。
·Qt Creator 4.8.2是用於Qt程序開發的IDE,在開發PyQt5的程序時需要使用此軟件進行窗體可視化設計、查閱類的幫助信息等,必須安裝(自動)。
·Qt Creator 4.8.2 CDB Debugger support for Qt Creator,是用於支持在Qt Creator中進行程序調試的模塊,可以不安裝。
·MinGW 7.3.0是MinGW編譯工具鏈,需要安裝。
·Strawberry Perl是一個Perl語言工具,無須安裝。
3、Qt的幾個工具軟件
安裝完成后,在Windows“開始”菜單里建立的“Qt 5.12.2”程序組內容如下圖所示。
程序組中的一個主要程序是Qt Creator 4.8.2(Enterprise),它是用於開發Qt程序的IDE,是Qt的主要工具軟件。
根據選擇安裝的編譯器模塊會建立相應的幾個子分組,每個分組下面都有以下3個工具軟件。
·Qt Assistant是一個獨立的查看Qt幫助文檔的工具軟件。在Qt Creator中也可以方便地查看Qt幫助文檔,基本用不着這個軟件。
·Qt Designer是一個進行窗體可視化設計的工具軟件。Qt Creator中也有一個內置的窗體可視化設計工具軟件(本書稱之為UI Designer),而且UI Designer可以為界面組件的信號生成槽函數框架,所以在本書中不使用這個獨立的Qt Designer,而使用Qt Creator內置的UI Designer。
·Qt Linguist是一個編輯語言資源文件的工具軟件。