Qt 的原理及使用(1)——qt的背景及安裝

1. Qt 背景介紹

1.1 什么是 Qt

Qt 是?個 跨平臺的 C++ 圖形??界?應?程序框架 。它為應?程序開發者提供了建?藝術級圖形 界?所需的所有功能。它是完全?向對象的,很容易擴展。Qt 為開發者提供了?種基于組件的開發模 式,開發者可以通過簡單的拖拽和組合來實現復雜的應?程序,同時也可以使? C++ 語?進??級開 發。

1.2 Qt 的發展史

1991 年 Qt 最早由奇趣科技開發;
1996 年 進?商業領域,它也是?前流?的 Linux 桌?環境 KDE 的基礎;
2008 年 奇趣科技被諾基亞公司收購,Qt 成為諾基亞旗下的編程?具;
2012 年 Qt ?被 Digia 公司收購;
2014 年 4 ? 跨平臺的集成開發環境 Qt Creator3.1.0 發布,同年 5 ? 20 ?發布了 Qt 5.3 正式版,?
此 Qt 實現了對 IOS、Android、Embedded 等各平臺的全??持。

1.3 Qt ?持的平臺

? Windows ? XP、Vista、Win7、Win8、Win2008、Win10
? Unix/X11 ? Linux、Sun Solaris、HP-UX、Compaq Tru64 UNIX、IBM AIX、SGI IRIX、FreeBSD、 BSD/OS、和其他很多 X11 平臺
? Macintosh ? Mac OS X
? Embedded ? 有幀緩沖?持的嵌?式 Linux 平臺,Windows CE
? Android

1.4 Qt 版本

?前最新的版本是 Qt 6. 但是相對來說 Qt 6 和 Qt 5 之間的核?功能區別不?. 并且企業中也仍然有?量 的項?在使? Qt 5.
另外 Qt 在發布的時候還提供了兩種許可證.
? 商業許可: 開發者以商業?的使?Qt框架進?開發和發布軟件的許可,開發者需要購買商業許可并 按照相關規定使?Qt框架。商業許可提供了更多的功能和服務,適合于商業軟件開發。
? 開源許可: 開發者以?商業?的使?Qt框架進?開發和發布軟件的許可,開發者可以免費使?Qt框 架,但需要遵守開源許可協議的要求,如在軟件中包含Qt許可協議的聲明等。

1.5 Qt 的優點

? 跨平臺,?乎?持所有的平臺;
? 接?簡單,容易上?,學習 QT 框架對學習其他框架有參考意義。
? ?定程度上簡化了內存回收機制;
? 開發效率?,能夠快速的構建應?程序。
? 有很好的社區氛圍,市場份額在緩慢上升。
? 可以進?嵌?式開發。

1.6 Qt 的應?場景

? 桌?應?程序
Qt 能夠創建各種類型的桌?應?程序,包括?件管理器、媒體播放器、繪圖程序等。Qt 應?程序?持 多種操作系統,可以運?在 Windows、Linux、macOS 等桌?操作系統上。
? 移動應?程序
Qt ?持 Android 和 IOS 移動操作系統,為應?程序提供了強?的跨平臺能?。可以使? Qt 構建各種 移動應?程序,例如社交應?、游戲、娛樂等。
? 嵌?式系統
Qt 在嵌?式領域應??常?泛,它可以構建?向各種設備的圖形應?程序,在機頂盒、?載娛樂系 統、安防監控設備等領域具有?泛的應?。

2. 搭建 Qt 開發環境

2.1 Qt 的開發?具概述

Qt ?持多種開發?具,其中?較常?的開發?具有:Qt Creator、Visual Studio等

1、Qt Creator

Qt Creator 是?個輕量級的跨平臺集成開發環境(IDE),專為使? Qt 框架進?應?程序開發?設 計。 它是?個功能強?、易于使?、快速且?效的?具,被?泛?于編寫各種類型的應?程序,如桌?應 ?程序、移動應?程序和嵌?式系統等。
Qt Creator 提供了?個可視化的界?設計器和代碼編輯器,可以幫助開發者更快捷地創建復雜的?? 界?和處理各種事件。
它還包含了調試?具、版本控制?具、?動完成和智能提?等功能,以及?持多語?和跨平臺的開發 環境。
Qt Creator 的主要特點包括:
? 緊密集成的 Qt 框架:Qt Creator 專?為 Qt 開發?設計,因此它與 Qt 框架集成得?常緊密,使開 發者可以更容易地管理和部署他們的應?程序。
? 強?的編輯器:Qt Creator 具有?些先進的編輯器功能,如語法?亮、代碼折疊、智能提?、?動 完成和代碼重構。
? 集成的調試器:Qt Creator 內置了調試器,允許開發?員在代碼中設置斷點以及檢查變量、堆棧和 調?樹等信息。
? ?效的構建系統:Qt Creator 提供了?個?效的構建系統,可以?動構建和部署應?程序,同時? 持使?不同的編譯器和平臺。
? 可視化界?設計器:Qt Creator 具有?個可視化界?設計器,它允許開發?員在沒有編寫代碼的情 況下創建復雜的??界?。
? 多語??持:Qt Creator ?持多種編程語?,包括 C++、QML、JavaScript 等。
總??之,Qt Creator 是?個功能?全、易于使?且?效的跨平臺 IDE,適?于各種類型的應?程序開 發,特別是那些使? Qt 框架的開發者。

2、Visual Studio

Visual Studio 是由微軟公司開發的集成開發環境(IDE)。它可以?來開發多種類型的應?程序。包括 Windows 桌?應?程序、Web應?程序、移動應?程序、游戲等。Visual Studio 提供了豐富的開發?
具和功能,包括代碼編輯器、調試器、?動完成、代碼重構、版本控制等等。它?持多種編程語?, 如:C++、C#、Visual Basic、F#、Python等。Visual Studio 還可以與其他開發?具和服務集成,如 Azure 云服務、GitHub、Jenkins等。
Visual Studio 具有以下?些主要特點:
? 多語??持:Visual Studio ?持多種編程語?,包括 C++、C#、Visual Basic、F#、Python、
JavaScript 等;
? 豐富的?具集:VS 提供了各種開發?具,包括代碼編輯器、調試器、代碼分析?具等,以提?開 發?員的效率;
? 可視化設計:VS提供了可視化的設計?具,如窗體設計器、WPF 設計器等,使開發?員可以直觀 地設計??界?;
? 跨平臺開發:VS ?持跨平臺開發,可以開發適?于 Windows、Linux 和 macOS 等多個平臺的應 ?程序;
? 集成的調試器:VS 集成了強?的調試器,可以進?代碼的單步調試、斷點調試等操作來幫助開發 ?員查找和修復錯誤;
? 豐富的擴展性:VS 可以通過安裝擴展來擴展其功能,開發?員可以根據??的需求選擇并安裝適合的擴展。

2.2?Qt SDK 的下載

Qt 下載官?: http://download.qt.io/archive/qt/
國內清華源: https://mirrors.tuna.tsinghua.edu.cn/qt/archive/qt/
下載以后正常安裝即可
注意在安裝的時候組件選擇的地方
選擇安裝組件;這?我們 安裝的是 Qt Creator 。如果電腦磁盤空間允許,建議全選以便后續使
?,如果空間不允許推薦最起碼安裝以下的組件!
其他步驟只用正常安裝即可!

2.3 Qt 環境變量配置

1、找到Qt的安裝路徑,復制 "bin" 路徑;
2、"此電腦" ------> ?標右鍵, "屬性" -
3、"新建" ------> 填? "bin" 路徑 ------> "確定" ;
4、注意:在關掉所有窗?時,?定要點擊 "確定" ,否則上述配置?效。

2.4為什么要設置環境變量

環境變量是在操作系統中?個具有特定名字的對象,它包含了?個或者多個應?程序將要使
?到的信息。
例如Windows 和 DOS 操作系統中的 path 環境變量,當要求系統運??個程序?沒有告訴它
程序所在的完整路徑時,系統除了在當前?錄下?尋找此程序外,還會到 path 中指定的路徑
去找。 在 Windows 上設置 Qt 的環境變量是為了能夠在命令?或其他應?程序中直接訪問 Qt 相關
的命令和?具。

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

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

相關文章

多分類問題softmax傳遞函數+交叉熵損失

在多分類問題中,Softmax 函數通常與交叉熵損失函數結合使用。 Softmax 函數 Softmax 函數是一種常用的激活函數,主要用于多分類問題中。它將一個實數向量轉換為概率分布,使得每個元素的值在 0 到 1 之間,且所有元素的和為 1。 …

數智讀書筆記系列032《統一星型模型--一種敏捷靈活的數據倉庫和分析設計方法》

引言 在當今數字化時代,數據倉庫作為企業數據管理的核心基礎設施,承擔著整合、存儲和提供企業數據的關鍵角色。隨著商業環境的快速變化和業務需求的日益復雜,數據倉庫的設計方法也在不斷演進,以適應新的挑戰和要求。 背景與意義 數據倉庫領域長期存在著兩種主流方法論之…

RT-Thread 深入系列 Part 1:RT-Thread 全景總覽

摘要: 本文將從 RTOS 演進、RT-Thread 的版本分支、內核架構、核心特性、社區與生態、以及典型產品應用等多維度,全面呈現 RT-Thread 的全景圖。 關鍵詞:RT-Thread、RTOS、微內核、組件化、軟件包管理、SMP 1. RTOS 演進與 RT-Thread 定位 2…

[docker基礎一]docker簡介

目錄 一 消除恐懼 1) 什么是虛擬化,容器化 2)案例 3)為什么需要虛擬化,容器化 二 虛擬化實現方式 1)應用程序執行環境分層 2)虛擬化常見類別 3)常見虛擬化實現 一)主機虛擬化(虛擬機)實現 二)容器虛擬化實現 一 消除恐…

PostgreSQL 的 pg_advisory_lock 函數

PostgreSQL 的 pg_advisory_lock 函數 pg_advisory_lock 是 PostgreSQL 提供的一種應用級鎖機制,它不鎖定具體的數據庫對象(如表或行),而是通過數字鍵值來協調應用間的并發控制。 鎖的基本概念 PostgreSQL 提供兩種咨詢鎖(advi…

SGLang 實戰介紹 (張量并行 / Qwen3 30B MoE 架構部署)

一、技術背景 隨著大語言模型(LLM)的飛速發展,如何更高效、更靈活地駕馭這些強大的模型生成我們期望的內容,成為了開發者們面臨的重要課題。傳統的通過拼接字符串、管理復雜的狀態和調用 API 的方式,在處理復雜任務時…

微服務中 本地啟動 springboot 無法找到nacos配置 啟動報錯

1. 此處的環境變量需要匹配nacos中yml配置文件名的后綴 對于粗心的小伙伴在切換【測試】【開發】環境的nacos使用時會因為這里導致項目總是無法啟動成功

Lua從字符串動態構建函數

在 Lua 中,你可以通過 load 或 loadstring(Lua 5.1)函數從字符串動態構建函數。以下是一個示例: 示例 1:基本動態函數構建 -- 動態構建一個函數 local funcStr "return function(a, b) return a b end"-…

【Python】?Python單元測試框架unittest總結

1. 本期主題:Python單元測試框架unittest詳解 unittest是Python內置的單元測試框架,遵循Java JUnit的"測試驅動開發"(TDD)理念,通過繼承TestCase類實現測試用例的模塊化組織。本文聚焦于獨立測試腳本的編寫…

【Python 實戰】---- 使用Python批量將 .ncm 格式的音頻文件轉換為 .mp3 格式

1. 前言 .ncm 格式是網易云音樂專屬的加密音頻格式,用于保護版權。這種格式無法直接播放,需要解密后才能轉換為常見的音頻格式。本文將介紹如何使用 Python 批量將 .ncm 格式的音頻文件轉換為 .mp3 格式。 2. 安裝 ncmdump ncmdump 是一個專門用于解密 .ncm 文件的工具。它…

Linux 學習筆記2

Linux 學習筆記2 一、定時任務調度操作流程注意事項 二、磁盤分區與管理添加新硬盤流程磁盤管理命令 三、進程管理進程操作命令服務管理(Ubuntu) 四、注意事項 一、定時任務調度 操作流程 創建腳本 vim /path/to/script.sh # 編寫腳本內容設置可執行權…

YOLO目標檢測算法

文章目錄 前言一、目標檢測算法簡介1、傳統目標檢測算法(1)R-CNN算法簡介(2)Fast R-CNN算法簡介(3)Faster R-CNN算法簡介 2、目標檢測中的算法設計范式(1)one-stage(2&am…

【軟件設計師:軟件】20.軟件設計概述

一、軟件設計基本原則 一、軟件設計基本原則 1. 模塊 是指執行某一特定任務的數據結構和程序代碼。 將模塊的接口和功能定義為其外部特性將模塊的局部數據和實現該模塊的程序代碼稱為內部特性。在模塊設計時,最重要的原則就是實現信息隱蔽和模塊獨立。 2 . 信息隱蔽 將每…

軟件工程之面向對象分析深度解析

前文基礎: 1.軟件工程學概述:軟件工程學概述-CSDN博客 2.軟件過程深度解析:軟件過程深度解析-CSDN博客 3.軟件工程之需求分析涉及的圖與工具:軟件工程之需求分析涉及的圖與工具-CSDN博客 4.軟件工程之形式化說明技術深度解…

需求分析階段測試工程師主要做哪些事情

在軟件測試需求分析階段,主要圍繞確定測試范圍、明確測試目標、細化測試內容等方面開展工作,為后續測試計劃的制定、測試用例的設計以及測試執行提供清晰、準確的依據。以下是該階段具體要做的事情: 1. 需求收集與整理 收集需求文檔&#x…

vLLM部署Qwen2-7B模型推理

vllm簡介 vLLM是一個高效的大語言模型推理和部署服務系統,專為大型語言模型的高效執行而設計。它不僅支持多種量化技術以減少模型大小和加速推理過程,還提供了與OpenAI API兼容的服務接口,使得現有的應用程序能夠無縫對接。 一、前提環境 …

【STM32 學習筆記】GPIO輸入與輸出

GPIO詳解 一、GPIO基本概念 GPIO(通用輸入輸出)是微控制器與外部設備交互的核心接口,具有以下特性: 可編程控制輸入/輸出模式支持數字信號的讀取與輸出集成多種保護機制復用功能支持片上外設連接 二、GPIO位結構解析 2.1 保護二…

安科瑞光伏綜自系統在新能源電站中的應用及調度上傳方案研究

摘要 隨著全球對清潔能源需求的不斷增長,光伏發電作為一種可持續的能源解決方案,正迅速發展。光伏綜合自動化系統(綜自系統)在確保光伏電站高效、穩定運行方面起著關鍵作用。本文詳細介紹了安科瑞光伏綜自系統,包括其背…

[python] 函數2-匿名函數

一 匿名函數 格式: 函數名 lambda 形參 : 返回值(表達式) 調用: 結果 函數名(實參) 一般只有一行代碼,他是對def定義函數的一種簡化,只能實現簡單的邏輯 邏輯復雜時不要使用lambda add lambda a,b: ab # a,b就是形參 print(add(2,5)) 1.1 無參數 noargs_func lambda…

深入理解C/C++內存管理:從基礎到高級優化實踐

一、內存區域劃分與基礎管理機制?? ??棧(Stack)?? 棧由系統自動管理,用于存儲函數調用時的局部變量、參數及返回地址。其特點是高效但空間有限(通常1-8MB),遵循后進先出(LIFO)…