Qt Creator使用教程的簡單說明
Qt 在很長的一段時間內(nèi)都沒有自己的開發(fā)環(huán)境,直到 Qt 被諾基亞收購,才大力推自己的集成開發(fā)環(huán)境,就是 Qt Creator,這為 Qt 的開發(fā)帶來了很大的方便。
在 Qt Creator 誕生之前, 程序員可以通過 qmake 命令行編譯,或者像前面幾節(jié)一樣手動輸入 g++ 命令編譯,在 Linux 平臺還有 KDevelop 這類 KDE 桌面程序開發(fā)環(huán)境(一般用 cmake 生成腳本)。
如今 Qt Creator 功能十分強大了,包含項目模板生成、代碼編輯、UI 設(shè)計、QML 界面編輯、調(diào)試程序、上下文幫助等豐富功能,而且支持手機平板設(shè)備、嵌入式設(shè)備等程序的開發(fā)調(diào)試。本節(jié)通過一個簡單例子展示 Qt Creator 的代碼編輯和 UI 編輯功能。
Qt Creator 歡迎界面
從開始菜單或者快捷方式打開 QtCreator 集成開發(fā)環(huán)境,啟動之后看到類似下面的界面:
QtCreator 最左邊是一排功能按鈕。上半部分按鈕是 QtCreator 工作模式選擇,共有七種工作模式,分別是歡迎、編輯(編寫代碼)、設(shè)計(GUI可視化編輯)、Debug(調(diào)試程序)、項目(項目參數(shù)配置)、分析(程序執(zhí)行效率分析)、幫助。下面四個按鈕是構(gòu)建調(diào)試區(qū),由上到下依次是 Qt 套件選擇、運行、調(diào)試運行和構(gòu)建。
左邊的設(shè)計按鈕、項目按鈕和構(gòu)建調(diào)試區(qū)只有在打開或新建了項目之后才會變得可用。
QtCreator 下方的是定位工具和輸出面板,在編寫項目代碼和運行、調(diào)試程序時會使用到。輸出面板包括七個,分別是問題(項目構(gòu)建時的問題)、Search Results(搜索項目文件內(nèi)容)、應(yīng)用程序輸出(運行和調(diào)試信息顯示)、編譯輸出(編譯、鏈接命令及其輸出信息)、QML/JS Console(QML 命令窗口)、概要信息(項目信息摘要)、Version Control(版本控制系統(tǒng))。
QtCreator 中間的區(qū)域是所選擇的工作模式界面,默認是歡迎模式。歡迎模式有三個子功能,第一個 Project 是項目顯示,包括之前的會話和項目記錄。項目記錄比較好理解,而會話涵蓋內(nèi)容比較廣,一個會話可以是多個項目的列表,并含有它們的配置以及上次編輯位置記錄、調(diào)試 斷點等等。會話記錄的上方是新建項目的快捷按鈕,項目記錄的上方是打開項目的快捷按鈕。歡迎模式另外兩個子功能是瀏覽 Qt 庫自帶的示例和教程,感興趣的讀者可以自行打開看看。
Qt Creator 新建項目
接下來我們新建一個 HelloWorld 項目。打開 Qt Creator 文件菜單,點擊“新建文件或項目”(快捷鍵 Ctrl+N),或者直接在歡迎模式點擊快捷按鈕“New Project”,都可以打開如下所示的新建項目對話框:
新建項目對話框里有五類項目模板:
項目模板 | 說明 |
---|---|
Application | Qt 應(yīng)用程序,包括普通窗體程序和 QtQuick 程序。 |
Library | 可以創(chuàng)建動態(tài)庫、靜態(tài)庫以及 QtQuick 擴展插件、QtCreator 自身插件。 |
其他項目 | 可以創(chuàng)建單元測試項目、Qt4 設(shè)計師自定義控件、子目錄項目等。 |
Non-Qt Project | 非 Qt 項目??梢詣?chuàng)建純 C 或 純 C++ 項目。 |
Import Project | 導(dǎo)入項目。從版本控制系統(tǒng)管理的軟件項目導(dǎo)入舊的項目。 |
本教程常用的只有第一類 Application,選擇它,在右側(cè)會看到 Qt 應(yīng)用程序的五個子模板:
- Qt Widgets Application:普通窗體模板,傳統(tǒng)基于部件的窗體界面程序。
- Qt Console Application:Qt 控制臺應(yīng)用程序。因為 Qt 主要用于圖形界面設(shè)計,這個控制臺項目模板基本不用的。
- Qt Quick Application、Qt Quick Controls 2 Application 和 Qt Canvas 3D Application 工程將會使用 QML 代碼,Quick Control 主要比 Quick 多一些控件,Canvas 3D 用來創(chuàng)建3D動畫。
本教程使用第一個子模板 Qt Widgets Application,開發(fā)普通的 Qt 窗體應(yīng)用程序。選擇該項目模板,點擊對話框下方的“Choose...”按鈕,進入 Qt Widgets Application 項目新建的向?qū)Ы缑妫?/p>
將項目名稱設(shè)置為 HelloWord,創(chuàng)建路徑設(shè)置為 D:\QtDemo,點擊“下一步”,進入“Kit Selection”界面:
這一步是為 HelloWord 設(shè)置 Qt 套件(Qt Kits),默認只有第一個“Desktop Qt 5.9.0 MinGW 32bit”,如果安裝配置了多個 Qt 套件,就可以都選上。
Qt 套件是指 Qt 程序從編譯鏈接到運行環(huán)境的全部工具和 Qt 類庫的集合,對于 MinGW 版本 Qt 程序生成和調(diào)試,至少需要 MinGW 中的編譯器 g++(自動調(diào)用鏈接器)、g++ 配套的基礎(chǔ)庫、調(diào)試器 gdb 還有使用 MinGW 環(huán)境編譯而成的 Qt 類庫自身。默認情況下,在上面 Kit Selection 里選中全部套件,然后點擊“下一步”,進入“類信息”設(shè)置界面:
類信息設(shè)置界面,最關(guān)鍵的是基類的選擇,目前是三種基類:
基類 | 說明 |
---|---|
QMainWindow | 基于主窗口類的程序,一般用于較為復(fù)雜的應(yīng)用程序,除了中央客戶區(qū)界面,還可以包括菜單欄、工具欄、狀態(tài)欄以及多個可??康?工具對話框等等。 |
QWidget | 最簡單最基本的窗體程序,里面可以放置多個控件實現(xiàn)程序功能。 |
QDialog | 基于對話框的程序,對話框一般用于彈窗,也可以用于主界面顯示。對話框是從 QWidget 繼承而來的,并豐富了一些功能,如模態(tài)顯示和返回值等。 |
我們當(dāng)然從最簡單的學(xué)起,在基類里選擇 QWidget ,類名和文件名會根據(jù)基類自動修改,不需要額外設(shè)置。點擊“下一步”,進入“項目管理”界面:
在項目管理界面可以設(shè)置作為子項目,以及加入版本控制系統(tǒng)管理。這兩個功能暫時用不到,都用默認的 <None> ,然后點擊 “完成”。
項目創(chuàng)建完成之后,Qt Creator 會直接進入代碼編輯模式,可以看到類似下圖界面:
1)左邊欄
編輯模式左邊豎排的兩個窗口叫做“邊欄”,上面的默認是項目文件管理窗口,下面的是打開文件列表窗口。在 QtCreator 菜單“控件-->顯示邊欄 Alt+0”,可以控制邊欄的顯示和隱藏。
邊欄里的窗口數(shù)目可以增加,邊欄子窗口標(biāo)題欄(其實是工具條,長得像標(biāo)題欄,姑且這么稱呼)有一排小按鈕,最右邊的是關(guān)閉按鈕,倒數(shù)第二個是增加分欄按鈕,可以添加多個邊欄子 窗口。
邊欄子窗口標(biāo)題欄第一個控件是組合框,可以選擇該子窗口的功能視圖類型,目前可以選擇 8 個視圖類型:
視圖類型 | 說明 |
---|---|
項目 | 即項目文件管理視圖,可以選擇項目里的文件進行編輯,包括 pro 文件也可以手動編輯。 |
打開文檔 | 當(dāng)前已經(jīng)打開的文件列表,文件名右邊如果有 * 號,是該文件被修改了但尚未保存。 |
書簽 | 右擊代碼編輯器行號位置,看到“切換書簽”,可以給代碼行添加書簽,方便跳轉(zhuǎn)到該位置。 |
文件系統(tǒng) | 相當(dāng)于系統(tǒng)里的文件資源管理器,可以查看項目文件夾在磁盤里的實際文件列表。 |
類視圖 | 可以查看項目里包含的類及相應(yīng)源代碼文件里的成員函數(shù)、成員變量。 |
大綱 | 編輯器所顯示的當(dāng)前文件的大綱列表,如名字空間、類名、成員函數(shù)、成員變量等。 |
類型層次 | 當(dāng)前項目包含的類及其基類、派生類列表。 |
Include Hierarchy | 包含視圖,顯示當(dāng)前項目里 *.h 、*.cpp 以及 Qt 類庫頭文件之間的包含關(guān)系。 |
可見 Qt Creator 提供的功能視圖是很豐富的,這些視圖不需要死記硬背,只要知道大概有這些東西,以后需要的時候會調(diào)出來就行了。一般用頭兩個就差不多了,當(dāng)然也可以建立多個分欄,啟用其他功能視圖。
2) 代碼編輯器
說完了左邊欄,再來看看右邊的代碼編輯器:
代碼編輯器大致可以分為三個部分,帶有一堆控件的標(biāo)題欄(其實是工具條)、行首區(qū)和編輯區(qū)。
先看看標(biāo)題欄的 10 個控件,這些東西不需要記,因為打開 Qt Creator 的時候,這些東西都在那里,用鼠標(biāo)指向這些控件幾秒鐘,會自動顯示這些控件的工具提示信息,這里將它們羅列出來,方便讀者以后查閱而已:
- ①和②:導(dǎo)航按鈕“返回”和“前進”,這與網(wǎng)頁瀏覽器的前進和后退按鈕類似,可以在之前瀏覽的多個代碼文件或一個代碼文件里多個位置之間快速切換。
- ③:標(biāo)識當(dāng)前顯示的文件是只讀還是可寫,一般都是可寫的。
- ④:文件類型圖標(biāo),當(dāng)前顯示文件的類型,這個控件其實是一個菜單按鈕,點擊可以彈出豐富的文件處理功能菜單,感興趣的讀者可以點開看看。
- ⑤:打開的文件名,可以在多個打開的文件之間選擇切換,與邊欄的“打開文檔”視圖是對應(yīng)的。
- ⑥:關(guān)閉當(dāng)前顯示的文檔。
- ⑦:為當(dāng)前顯示的文件添加額外的C++預(yù)處理指令,一般用不著。
- ⑧:選擇符號,可以在當(dāng)前顯示的文件里多個函數(shù)、類、成員變量等之前快速切換,與邊欄“大綱”視圖是對應(yīng)的。
- ⑨:編輯區(qū)光標(biāo)的行號和列號。
- ⑩:代碼編輯區(qū)分欄,可以增加多個編輯器窗口,顯示多個打開的文檔或顯示較大源碼文件的多個位置。
行首區(qū)是淺灰色背景的部分,主要用來顯示代碼行號,以及調(diào)試斷點標(biāo)志和代碼書簽標(biāo)志。右擊行首區(qū)可以彈出右鍵菜單,菜單里可以切換書簽、編輯書簽以及設(shè)置或取消斷點。
同一行是既可以打斷點也可以設(shè)置書簽的,二者不沖突,其實它們根本就沒關(guān)系。單擊行號前面的淺灰色空白區(qū)可以直接打斷點,再次單擊可以取消斷點,另外也可以用快捷鍵 F9 設(shè)置或取消斷點。代碼書簽一般用右鍵菜單來設(shè)置,也可以用快捷鍵 Ctrl+M 設(shè)置或取消書簽。
編輯區(qū)是程序員最為常用的部分了,就是寫代碼用的。編輯區(qū)當(dāng)然有語法高亮顯示了,而且從編輯區(qū)的復(fù)制出來的內(nèi)容是 HTML 語法的豐富文本格式,如果粘貼到 Word 之類的文字處理軟件中,會直接顯示彩色高亮代碼,這是很實用的功能。
對于現(xiàn)代集成開發(fā)環(huán)境常見的變量名、類名、名字空間、函數(shù)名、類對象成員變量、結(jié)構(gòu)體成員變量等等名字補全功能,Qt Creator 編輯器當(dāng)然也能很好地支持。變量/函數(shù)調(diào)用追蹤、變量/函數(shù)聲明追蹤、類名或變量名函數(shù)名自動改名等常見的輔助功能,也都是支持的(選擇要改或要追蹤的名字,右擊,在右鍵 菜單里有一大堆功能,Refactor菜單項里面有自動改名)。
Qt Creator 編輯 UI
在 Qt Creator 編輯模式邊欄上面的項目視圖里,包含一個 HelloWorld.pro 項目文件和 Headers(頭文件)、Sources(源文件)、Forms(界面文件)三個虛擬目錄。這三個虛擬目錄是項目里對文件類型的歸類顯示,widget.h 和 main.cpp、widget.cpp 三個代碼文件在后續(xù)小節(jié)講解,本小節(jié)先設(shè)計圖形界面文件 widget.ui。
雙擊 widget.ui 文件,Qt Creator 會自動進入設(shè)計模式,可以對圖形界面進行可視化編輯:
這個設(shè)計模式界面和《Qt Designer的簡單使用》中介紹的 Qt 設(shè)計師是完全類似的,而且這就是將 Qt Designer 的功能做成插件,集成到 Qt Creator 了。
當(dāng)然設(shè)計師變成插件之后,和原來的獨立設(shè)計師程序有區(qū)別,現(xiàn)在插件設(shè)計師自己的菜單集成到 Qt Creator 菜單欄的“工具-->Form Editor”級聯(lián)菜單里。預(yù)覽窗口需要點擊菜單欄的“工具-->Form Editor-->預(yù)覽”。
和《Qt Designer的簡單使用》一節(jié)類似的,拖一個 Label 標(biāo)簽控件到窗體編輯區(qū)里,然后設(shè)置標(biāo)簽控件的 geometry 的四個子屬性: X 為 10,Y 為 10,寬度為 200,高度為 40。接著編輯標(biāo)簽控件的 text 屬性為“Hello World! ”,看到效果如下:
編輯完成以后,注意使用 Ctrl+S 快捷鍵保存項目。
Qt Creator 生成和運行程序
使用 Qt Creator 生成和運行程序是再簡單不過的事了。一個按鈕就夠了。當(dāng)然,得先認識認識一下 Qt Creator 左下角的按鈕:
左下角一共有四個按鈕,下面分別介紹一下:
- 第一個按鈕是選擇構(gòu)建項目使用的 Qt 套件和構(gòu)建目標(biāo)程序的類型(Debug 或 Release)。
- 第二個是運行按鈕,快捷鍵是 Ctrl+R,如果還沒構(gòu)建項目或剛修改了代碼,直接點擊運行的話,QtCreator 會自動構(gòu)建生成新的目標(biāo)程序并運行。
- 第三個是調(diào)試按鈕,快捷鍵是 F5。調(diào)試程序之前,QtCreator 會自動構(gòu)建生成最新的目標(biāo)程序,并進入調(diào)試模式。在下一節(jié)專門講解調(diào)試程序。
- 第四個是構(gòu)建按鈕,快捷鍵是 Ctrl+B,只構(gòu)建最新的目標(biāo)程序,但不運行。
如果只構(gòu)建而不運行程序,就點第四個。一般都是構(gòu)建后運行程序查看效果,可以直接點擊第二個運行按鈕,如果沒問題發(fā)生,就會顯示目標(biāo)程序主界面:
從編譯生成到運行,不需要自己敲命令,一個按鈕搞定,這就是集成開發(fā)環(huán)境的好處。
上面示范的是默認 Qt 套件,構(gòu)建的是 Debug 類型的目標(biāo)程序。如果需要構(gòu)建 Release 版目標(biāo)程序,點開左下角第一個按鈕:
這里有三種構(gòu)建模式:其中 Debug 和 Release 我們都是耳熟能詳?shù)?,前者是?code>-g模式編譯,帶著符號信息,便于我們調(diào)試,后者是經(jīng)過優(yōu)化之后,性能更上一個檔次的。profile 則是在這兩者之中取一個平衡,兼顧性能和調(diào)試,可以類似的看做是性能更優(yōu)但是又方便調(diào)試的版本。
可以選擇 Release 構(gòu)建類型,然后再點擊運行按鈕就可以構(gòu)建運行 Release 版本目標(biāo)程序。
上圖是針對項目只用到單一 Qt 套件的,如果之前配置了多個 Qt 套件,看到的類似下圖:
如果項目配置了多個可用的 Qt 套件,點開左下角第一個按鈕后,會看到各個套件以及構(gòu)建類型,如果要切換 Qt 套件或構(gòu)建類型,直接選中相應(yīng)條目,然后點擊運行按鈕就行了。如果構(gòu)建和運行時沒出錯,就會顯示出構(gòu)建好的目標(biāo)程序界面。
到此這篇關(guān)于Qt Creator使用教程的簡單說明的文章就介紹到這了,更多相關(guān)Qt Creator使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C語言不使用strcpy函數(shù)如何實現(xiàn)字符串復(fù)制功能
這篇文章主要給大家介紹了關(guān)于C語言不使用strcpy函數(shù)如何實現(xiàn)字符串復(fù)制功能的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02