Qt Creator(2)【如何在Qt Creator中創建新工程】

閱讀導航

  • 引言
  • 一、Qt Creator開始界面介紹
  • 二、如何在Qt Creator中創建新工程
    • 1. 新建項目
    • 2. 選擇項目模板
    • 3. 選擇項目路徑
    • 4. 選擇構建系統
    • 5. 填寫類信息設置界面
    • 6. 選擇語言和翻譯文件
    • 7. 選擇Qt套件
    • 8. 選擇版本控制系統
    • 9. 最終效果
  • 三、認識Qt Creator項目內容界面
    • 1. 基本界面
    • 2. UI設計界面
    • 3. 構建區

引言

Qt Creator提供了一套完整的工具集,旨在簡化并加速Qt應用程序的開發流程。它不僅包括代碼編輯、界面設計、版本控制等功能,還提供了代碼自動補全、自定義構建系統和強大的調試工具。通過今天的學習,我們將掌握Qt Creator的基本使用,從創建項目、編寫代碼到應用程序的調試和部署,全方位提升我們的開發效率和體驗。接下來,讓我們一起探索Qt Creator的世界,讓Qt開發變得更加得心應手。

一、Qt Creator開始界面介紹

在這里插入圖片描述
①:菜單欄:菜單欄?共有8個菜單選項,包含了常?的功能菜單:

菜單功能描述
文件包含了新建、打開、關閉項目和文件、打印和退出等基本功能
編輯包含了撤銷、剪切、復制、查找和選擇編碼等功能
構建包含構建和運行項目等相關功能。
調試包含調試運行項目等相關功能。
Analyze包含QML分析器、Valgrind內存和性能分析器等相關功能。
工具提供了快速定位菜單、外部工具菜單等。這里的選項菜單中包含了Qt Creator各個方面的設置選項:環境設置、文本編輯器設置、幫助設置、構建和運行設置、調試器設置和版本控制設置等。
控件包含了設置窗口布局的一些菜單,如全屏顯示和隱藏邊欄功能等。
幫助包含Qt幫助、Qt Creator版本信息、報告bug和插件管理等菜單。

②:模式選擇

模式功能描述
歡迎模式提供功能的快捷入口,如打開幫助教程、示例程序、項目、新建項目、快速打開以前的項目和會話、聯網查看Qt官方論壇和博客等。示例頁面顯示了Qt自帶的大量示例程序,并提供了搜索欄以實現快速查找;教程頁面提供了一些視頻教程資源,但為英文。
編輯模式主要用來查看和編輯程序代碼,管理項目文件。Qt Creator中的編輯器具有關鍵字特殊顏色顯示、代碼自動補全、聲明定義間快捷切換、函數原型提示、F1鍵快速打開相關幫助和全項目中進行查找等功能。也可以在"工具->選項"菜單中對編輯器進行設置。
設計模式整合了Qt Designer的功能。可以設計圖形界面,進行部件屬性設置、信號和槽設置、布局設置等操作。
調試模式支持設置斷點、單步調試和遠程調試等功能,包含局部變量和監視器、斷點、線程以及快照等查看窗口。
項目模式包含對特定項目的構建設置、運行設置、編輯器設置、代碼風格設置和依賴關系等頁面。構建設置中可以對項目的版本、使用的Qt版本和編譯步驟進行設置;編輯器設置中可以設置文件的默認編碼;在代碼風格設置中可以設置自己的代碼風格。
幫助模式在幫助模式中將Qt助手整合了進來,包含目錄、索引、查找和書簽等幾個導航模式,可以在幫助中查看Qt和Qt Creator的各方面信息。

③:構建套件選擇器:構建套件選擇器包含了?標選擇器(Target selector)、運?按鈕(Run)、調試按鈕(Debug)和構建按鈕(Building)四個圖標。

組件功能描述
目標選擇器用來選擇要構建哪個項目、使用哪個Qt庫,對于多個Qt庫的項目很有用。還可以選擇編譯項目的debug版本或是release版本。
運行按鈕實現項目的構建和運行。
調試按鈕實現項目的調試。
構建按鈕完成項目的構建。

④:歡迎模式下的窗??作?式

菜單功能描述
Project用來新建工程、打開工程。
示例包含Qt官方的一些示例。
教程提供Qt官方教程。

⑤:定位器:使?定位器來快速定位項?、?件、類、?法、幫助?檔以及?件系統。可以使?過濾器來更加準確地定位要查找的結果。

⑥:輸出窗格:輸出窗格包含了問題、搜索結果(Search Results)、應?程序輸出、編譯輸出、Debugger Console、概要信息、測試結果(Test Results)7個選項,它們分別對應?個輸出窗?,響應的快捷鍵依次是Alt+數字1~7。

窗口名稱功能描述
問題問題窗口顯示程序編譯時的錯誤和警告信息。
Search Results搜索結果窗口顯示執行了搜索操作后的結果信息。
應用程序輸出應用程序窗口顯示應用程序運行過程中輸出的所有信息。
編譯輸出編譯輸出窗口顯示程序編譯過程輸出的相關信息。

⑦:會話記錄:可以對會話進?管理,包括 Clone。如果沒打開?程,則顯?的是最后?次打開的(會話)?程,否則,顯?當前的會話(?程)。

⑧:新建項目

⑨:打開已有項目

二、如何在Qt Creator中創建新工程

1. 新建項目

打開Qt Creator,在菜單欄中選中:“?件”-------->“新建?件或項?”;或者使?快捷鍵:Ctrl +
n;或者直接點擊:“new”;
在這里插入圖片描述
在歡迎模式下,直接點擊New,如下圖?:
在這里插入圖片描述

2. 選擇項目模板

在這里插入圖片描述
新建項?對話框?有五類項?模板

項目模板說明
ApplicationQt應用程序,包括普通窗體程序和QtQuick程序。
Library可以創建動態庫、靜態庫以及QtQuick擴展插件、QtCreator自身插件。
其他項目可以創建單元測試項目、Qt4設計師自定義控件、子目錄項目等。
Non-Qt-Project非Qt項目。可以創建純C或純C++項目。
Import Project導入項目。從版本控制系統管理的軟件項目導入舊的項目。

常?的只有第?類Application,選擇它,在右側會看到Qt應?程序的五個?模板

  • Qt Widgets Application:普通窗體模板,傳統基于部件的窗體界?程序。
  • Qt Console Application:Qt 控制臺應?程序。因為 Qt 主要?于圖形界?設計,這個控制臺項?模板基本不?。
  • Qt for Python:在Python下?LGPL的許可來開發閉源 Qt軟件。
  • Qt Quick Application: Qt 提供的?種?級??界?技術,使?它可以?便快速的為移動以及嵌?式設備開發流暢美觀的??界?。Qt Quick 模塊是開發QML應?的標準庫,提供了使?QML創建??界?所需的?切,包括可視化、交互、動畫、模型、視圖、粒?效果以及著?效果等。

3. 選擇項目路徑

給Qt項?命名及選擇保存項?的路徑

在這里插入圖片描述

4. 選擇構建系統

選擇Qt項?的構建系統,使?默認的"qmake"即可
在這里插入圖片描述
Qt中的構建?具有三種可供選擇,分別是:qmake、CMake、Qbs,下?依次介紹。

  • qmake:qmake是?個構建?具(build tool),?于?動?成makefile?件。qmake?持跨平臺構建。qmake編輯的是?個后綴名為.pro的?件。
  • CMake:CMake是?個跨平臺的構建?具。CMake本?不是?個編譯器,其實就是?成?個讓編譯器能讀懂編譯流程的?件?具。讓CMake?動?成構建系統,例如Makefile和Visual Studio項??件。CMake是?個第三??具,有??的?檔。
  • Qbs:Qbs(Qt Build Suite:Qt構建套件)同qmake、CMake?樣都是構建?具。Qbs 號稱是新?代的構建?具,? qmake 編譯速度更快。Qbs 沒有綁定Qt版本,它從項??件的?級項?描述中?成?個正確的依賴表。?傳統的MakeFile?成?具如qmake和CMake,其在?成MakeFile?件后將實際的命令交給Make?具去執?。

Qt官?聲明,因市場原因,棄?Qbs。對于Qt??來說,qmake是當前使?最?泛的構建?具,CMake其次。

5. 填寫類信息設置界面

在這里插入圖片描述
對于基類的選擇,?前有三種基類:

基類說明
QMainWindow主窗口類,一般用于較為復雜的應用程序,除了中央客戶端界面,還包括菜單欄、工具欄、狀態欄以及多個可停靠的工具對話框等。
QWidget最簡單、最基本的窗體程序,里面可以放置多個控件實現程序功能。
QDialog基于對話框的程序,對話框一般用于彈窗,也可以用于主界面顯示。對話框是從QWidget繼承而來的,并豐富了一些功能,如模態顯示和返回值等。

上述三個類之間的關系如下圖:
在這里插入圖片描述

6. 選擇語言和翻譯文件

點擊"下?步"進?如下界?:
在這里插入圖片描述

此處選擇的語?是"漢語",“英語"這樣的語?。?不是"編程語?”.
一般是不用設置的

7. 選擇Qt套件

在這里插入圖片描述

默認只有第?個"Desktop Qt 5.14.2 MinGW 64-bit",如果安裝配置了多個Qt套件,就可以都選上。

Qt套件是指Qt程序從編譯鏈接到運?環境的全部?具和Qt類庫的集合,對于MinGW版本Qt程序?成和調試,?少需要MinGW中的編譯器g++(?動調?鏈接器)、g++配套的基礎庫、調試器gdb還有使?MinGW環境編譯?成的Qt類庫??。默認情況下,在上?Kit Selection?選中全部套件。

8. 選擇版本控制系統

點擊"下?步"進?項?管理界?;在項?管理界?可以設置作為?項?,以及加?版本控制系統管理。這兩個功能暫時?不到,都?默認的<None>,然后點擊"完成"。

在這里插入圖片描述

9. 最終效果

在這里插入圖片描述

三、認識Qt Creator項目內容界面

1. 基本界面

在這里插入圖片描述

2. UI設計界面

雙擊widget.ui?件,Qt Creator會?動進?設計模式,可以對圖形界?進?可視化編輯:
在這里插入圖片描述
①:組件選擇窗?:組件選擇窗?分為多個組,如Layouts、Buttons、Display Widgets等,界?設計的常?組件都可以在組件選擇窗?中找到。
②:UI設計窗?:如果要將某個組件放置到該窗?上時,從組件選擇窗?上拖放?個組件到窗體上即可。
③:動作編輯窗?:動作編輯窗?包括Action Editor以及Signals和Slots編輯器。Action Editor主
要是?來新建Action,并且通過拖拽的動作,將新建好的Action添加到菜單欄和?具欄上;Signals
和Slots編輯器?于可視化地進?信號與槽的關聯。
④:對象瀏覽窗?:?樹狀視圖顯?窗體上各組件之間的布局包含關系,視圖有兩列,顯?每個組件
的對象名稱(ObjectName)和類名稱。
⑤:屬性設置窗?:顯?某個選中的組件或窗體的各種屬性及其取值,可以在屬性設置窗??修改這
些屬性的值。

3. 構建區

在這里插入圖片描述
這?有三種構建模式

模式說明
Debug以"-g"模式編譯,帶著符號信息,優點是便于調試。
ProfileProfile是在"Debug"和"Release"之間取一個平衡,兼顧性能和調試,可以類似的看做是性能更優又方便調試的版本。
Release"Release"是經過優化之后,性能比"Debug"更上一個檔次。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/18108.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/18108.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/18108.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

React Native 之 處理觸摸事件(八)

React Native 提供了可以處理常見觸摸手勢&#xff08;例如點擊或滑動&#xff09;的組件&#xff0c; 以及可用于識別更復雜的手勢的完整的手勢響應系統。 Button是一個簡單的跨平臺的按鈕組件。下面是一個最簡示例&#xff1a; <ButtononPress{() > {Alert.alert(你點…

go語言初識別(五)

本博客內容涉及到&#xff1a;切片 切片 1. 切片的概念 首先先對數組進行一下回顧&#xff1a; 數組定義完&#xff0c;長度是固定的&#xff0c;例如&#xff1a; var num [5]int [5]int{1,2,3,4,5}定義的num數組長度是5&#xff0c;表示只能存儲5個整形數字&#xff0c…

檢索模型預訓練方法:RetroMAE

論文title&#xff1a;https://arxiv.org/pdf/2205.12035RetroMAE: Pre-Training Retrieval-oriented Language Models Via Masked Auto-Encoder 論文鏈接&#xff1a;https://arxiv.org/pdf/2205.12035 摘要 1.一種新的MAE工作流&#xff0c;編碼器和解器輸入進行了不同的掩…

華為OD機試【計算最接近的數】(java)(100分)

1、題目描述 給定一個數組X和正整數K&#xff0c;請找出使表達式X[i] - X[i1] … - X[i K 1]&#xff0c;結果最接近于數組中位數的下標i&#xff0c;如果有多個i滿足條件&#xff0c;請返回最大的i。 其中&#xff0c;數組中位數&#xff1a;長度為N的數組&#xff0c;按照元…

軟件性能測試有哪些測試類型和方法?

軟件性能測試是一種通過模擬真實用戶使用情況&#xff0c;評估軟件系統在各種壓力和負載下的表現的測試方法。在今天這個講究效率的時代&#xff0c;軟件性能測試是不可或缺的一環。它能幫助開發人員和企業發現潛在的性能問題&#xff0c;提前優化改進&#xff0c;保證軟件系統…

Flutter 中的 SizeChangedLayoutNotifier 小部件:全面指南

Flutter 中的 SizeChangedLayoutNotifier 小部件&#xff1a;全面指南 在 Flutter 中&#xff0c;SizeChangedLayoutNotifier 是一種特殊的小部件&#xff0c;它用于監聽其子組件尺寸的變化。當子組件的大小發生變化時&#xff0c;SizeChangedLayoutNotifier 可以通知其他組件…

動態內存管理—C語言通訊錄

目錄 一&#xff0c;動態內存函數的介紹 1.1 malloc和free 1.2 calloc 1.3 realloc 1.4C/C程序的內存開辟 二&#xff0c;通訊錄管理系統 動態內存函數的介紹 malloc free calloc realloc 一&#xff0c;動態內存函數的介紹 1.1 malloc和free void* malloc (…

回文鏈表(快慢指針解法之在推進過程中反轉)

歸納編程學習的感悟&#xff0c; 記錄奮斗路上的點滴&#xff0c; 希望能幫到一樣刻苦的你&#xff01; 如有不足歡迎指正&#xff01; 共同學習交流&#xff01; &#x1f30e;歡迎各位→點贊 &#x1f44d; 收藏? 留言?&#x1f4dd;抱怨深處黑暗&#xff0c;不如提燈前行…

進程間通信IPC機制

進程間通信&#xff08;IPC&#xff0c;InterProcess Communication&#xff09;是指在不同進程之間傳播或交換信息。IPC機制有多種方式&#xff0c;每種方式都有其特定的工作原理、應用場景以及優缺點。以下是對幾種主要IPC方式的詳細解釋&#xff1a; 管道&#xff08;Pipe&a…

數據結構算法題day04

數據結構算法題day04 題目分析算法思想代碼完整運行代碼如下&#xff1a; 題目 對長度為n的順序表L&#xff0c;編寫一個時間復雜度為O(n)、空間復雜度為O(1)的算法 該算法刪除線性表中所有值為X的數據元素。分析 O(n) -> 掃描一次順序表 O(1) -> 申請常數個輔助空間 1…

代碼隨想錄算法訓練營day14|二叉樹的遞歸遍歷、二叉樹的迭代遍歷、二叉樹的統一迭代法

二叉樹的遞歸遍歷 首先需要明確的一點是&#xff0c;前序中序和后序在二叉樹的遞歸遍歷中的區別僅在于遞歸函數中操作的順序&#xff0c;前序是在遍歷一個節點的左右子樹前進行操作&#xff0c;中序是在遍歷一個節點的左子樹后進行操作再遍歷右子樹&#xff0c;而后序是在遍歷…

C++算術運算和自增自減運算

一 引言 表示運算的符號稱為運算符。 算術運算&#xff1b; 比較運算&#xff1b; 邏輯運算&#xff1b; 位運算&#xff1b; 1 算術運算 算術運算包括加、減、乘、除、乘方、指數、對數、三角函數、求余函數&#xff0c;這些都是算術運算。 C中用、-、*、/、%分別表示加、減…

【AI】AI框架項目OpenWebUI如何追加模型

【背景】 openWebUI是一個非常好用的AI框架項目&#xff0c;既可以用API形式連接各類外部AI模型&#xff0c;也可以直接連接服務器硬盤上部署的離線大模型。 簡單來說&#xff0c;OpenWebUI可以用來方便地把你的本地模型變為可供所有內網人員使用的SAAS服務站點&#xff0c;并…

《當微服務遇上Ribbon:一場負載均衡的華麗舞會》

在微服務的廚房里&#xff0c;如何確保每一道服務都恰到好處&#xff1f;揭秘Spring Cloud Ribbon如何像大廚一樣精心調配資源&#xff0c;讓負載均衡變得像烹飪藝術一樣簡單&#xff01; 文章目錄 Spring Cloud Ribbon 詳解1. 引言微服務架構中的負載均衡需求Spring Cloud Rib…

【算法實戰】每日一題:設計一個算法,用最少數量的矩形覆蓋一系列寬度為d、高度為w的矩形,且使用矩形不能超出邊界

題目 設計一個算法&#xff0c;用最少數量的矩形覆蓋一系列寬度為d、高度為w的矩形建筑物側墻&#xff0c;且矩形不能超出邊界。 核心思路 考慮這種結構 前面遞增后面一個與前面的某個高度一致&#xff0c;這時候考慮最下面的覆蓋&#xff08;即都是從最下面向上覆蓋&#…

redis數據類型set,zset

華子目錄 Set結構圖相關命令sdiff key1 [key2]sdiffstore destination key1 [key2...]sinter key1 [key2...]sinterstore destination key1 [key2...]sunion key1 [key2...]sunionstore destination key1 [key2...]smove source destination memberspop key [count]sscan key c…

Java GC問題排查的一些個人總結和問題復盤

個人博客 Java GC問題排查的一些個人總結和問題復盤 | iwts’s blog 是否存在GC問題判斷指標 有的比較明顯&#xff0c;比如發布上線后內存直接就起飛了&#xff0c;這種也是比較好排查的&#xff0c;也是最多的。如果單純從優化角度&#xff0c;看當前應用是否需要優化&…

探索旅行的優惠之選,千益暢行旅游卡讓旅程更省心省力!

在旅行的道路上&#xff0c;一張旅游卡往往能為您帶來意想不到的便利與優惠。那么&#xff0c;對于千益暢行旅游卡&#xff0c;您是否好奇如何輕松擁有它呢&#xff1f; 首先&#xff0c;千益暢行旅游卡作為旅行者的貼心伴侶&#xff0c;為您提供了多樣化的獲取渠道。您可以通…

Unity實現首行縮進兩個字符

效果 在Unity中如果想實現首行縮進兩個字符&#xff0c;你會發現按空格是沒法實現的。 實現原理&#xff1a;用空白的透明的字替代原來的位置。 代碼&#xff1a; <color#FFFFFF00>XXX</color> 趕緊去試試吧&#xff01;

備戰秋招—模擬版圖面試題來了

隨著暑期的腳步逐漸臨近&#xff0c;電子工程和集成電路設計領域的畢業生們&#xff0c;也將迎來了另一個求職的黃金期——秋招。我們總說機會是留給有準備的人。對于有志于投身于模擬版圖設計的學子們來說&#xff0c;為了在眾多求職者中脫穎而出&#xff0c;充分備戰模擬版圖…