Qt基礎:資源文件

資源文件

  • 1. 資源文件
  • 2. 資源文件創建

1. 資源文件

資源文件顧名思義就是一個存儲資源的文件,在Qt中引入資源文件好處在于他能提高應用程序的部署效率并且減少一些錯誤的發生。
在程序編譯過程中, 添加到資源文件中的文件也會以二進制的形式被打包到可執行程序中,這樣這些資源就永遠和可執行程序捆綁到一起了,不會出現加載資源卻找不到的問題。
雖然資源文件優勢很明顯,但是它也不是萬能的,資源文件中一般添加的都是比較小的資源,比如: 圖片,配置文件,MP3 等,如果是類似視頻這類比較大的文件就不適合放到資源文件中了。

比如我們需要給某個窗口設置圖標, 代碼如下:

// 創建圖標對象
QIcon::QIcon(const QString &fileName);
// QWidget類的 公共成員函數
void setWindowIcon(const QIcon &icon);// 給窗口設置圖標
// 弊端: 發布的 exe 必須要加載 d:\\pic\\1.ico 如果當前主機對應的目錄中沒有圖片, 圖標就無法被加載
// 發布 exe 需要額外發布圖片, 將其部署到某個目錄中
setWindowIcon(QIcon("d:\\pic\\1.ico"));

我們可以使用資源文件解決上述的弊端, 這樣發布應用程序的時候直接發布exe就可以, 不需要再額外提供圖片了。

2. 資源文件創建

在這里插入圖片描述
在這里插入圖片描述
步驟:

  1. 打開資源文件

  2. 添加前綴/,并將資源文件放在項目文件的下級文件夾中.(一個資源文件中可以添加多個前綴, 前綴就是添加的資源在資源文件中的路徑, 前綴根據實際需求制定即可, 路徑以 / 開頭)

  3. 添加文件,可以設置別名alias

    • 彈出以文件選擇對話框, 選擇資源文件
    • 資源文件放到什么地方?放到和 項目文件 .pro 同一級目錄或者更深的目錄中.錯誤的做法: 將資源文件放到 .pro文件的上級目錄, 這樣資源文件無法被加載到
  4. 可以給添加的資源文件設置別名, 設置別名之后原來的名字就不能使用了.
    溫馨提示:在高版本的QtCreator中, 資源文件名字或者別名不支持中文,如果設置了中文會出現編譯會報錯。

  5. 如何在程序中使用資源文件中的圖片?拷貝其URL即可使用
    在這里插入圖片描述

在界面設計中圖標也可以從資源中選取
在這里插入圖片描述

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

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

相關文章

Agent TARS與Manus的正面競爭

Agent TARS 是 Manus 的直接競爭對手,兩者在 AI Agent 領域形成了顯著的技術與生態對抗。 一、技術架構與功能定位的競爭 集成化架構 vs 模塊化設計 Agent TARS 基于字節跳動的 UI-TARS 視覺語言模型,將視覺感知、推理、接地(grounding&#…

使用ssh連接上開發板

最后我發現了問題,我忘記指定用戶名了,在mobaXterm上左上角打開會話,點擊ssh,然后輸入要連接的開發板主機的ip地址,關鍵在這里,要指定你要連接的開發板的系統中存在的用戶,因為通過ssh連接一個設…

【性能優化點滴】odygrd/quill在編譯期做了哪些優化

Quill 是一個高性能的 C 日志庫,它在編譯器層面進行了大量優化以確保極低的運行時開銷。以下是 Quill 在編譯器優化方面的關鍵技術和實現細節: 1. 編譯時字符串解析與格式校驗 Quill 在編譯時完成格式字符串的解析和校驗,避免運行時開銷&…

【數據結構】排序算法(中篇)·處理大數據的精妙

前引:在進入本篇文章之前,我們經常在使用某個應用時,會出現【商品名稱、最受歡迎、購買量】等等這些榜單,這里面就運用了我們的排序算法,作為剛學習數據結構的初學者,小編為各位完善了以下幾種排序算法&…

混雜模式(Promiscuous Mode)與 Trunk 端口的區別詳解

一、混雜模式(Promiscuous Mode) 1. 定義與工作原理 定義:混雜模式是網絡接口的一種工作模式,允許接口接收通過其物理鏈路的所有數據包,而不僅是目標地址為本機的數據包。工作層級:OSI 數據鏈路層&#x…

大學生機器人比賽實戰(一)綜述篇

大學生機器人比賽實戰 參加機器人比賽是大學生提升工程實踐能力的絕佳機會。本指南將全面介紹如何從零開始準備華北五省機器人大賽、ROBOCAN、RoboMaster等主流機器人賽事,涵蓋硬件設計、軟件開發、算法實現和團隊協作等關鍵知識。 一、比賽選擇與準備策略 1.1 主…

【Linux】動靜態庫知識大梳理

親愛的讀者朋友們😃,此文開啟知識盛宴與思想碰撞🎉。 快來參與討論💬,點贊👍、收藏?、分享📤,共創活力社區。 在 Linux 系統編程中,動靜態庫是重要的組成部分&#xff0…

06-公寓租賃項目-后臺管理-公寓管理篇

尚庭公寓項目/公寓管理模塊 https://www.yuque.com/pkqzyh/qg2yge/5ba67653b51379d18df61b9c14c3e946 一、屬性管理 屬性管理頁面包含公寓和房間各種可選的屬性信息,其中包括房間的可選支付方式、房間的可選租期、房間的配套、公寓的配套等等。其所需接口如下 1.1…

Links for llama-cpp-python whl安裝包下載地址

Links for llama-cpp-python whl安裝包下載地址 Links for llama-cpp-python whl安裝包下載地址 https://github.com/abetlen/llama-cpp-python/releases

為境外組織提供企業商業秘密犯法嗎?

企業商業秘密百問百答之九十六:為境外組織提供企業商業秘密犯法嗎? 在日常的對外交流中,企業若暗中為境外的機構、組織或人員竊取、刺探、收買或非法提供商業秘密,這種行為嚴重侵犯了商業秘密權利人的合法權益,更深遠…

grep 命令詳解(通俗版)

1. 基礎概念 grep 是 Linux 下的文本搜索工具,核心功能是從文件或輸入流中篩選出包含指定關鍵詞的行。 它像“文本界的搜索引擎”,能快速定位關鍵信息,特別適合日志分析、代碼排查等場景。 2. 基礎語法 grep [選項] "搜索詞" 文件…

JSVMP逆向實戰:原理分析與破解思路詳解

引言 在當今Web安全領域,JavaScript虛擬機保護(JSVMP)技術被廣泛應用于前端代碼的保護和反爬機制中。作為前端逆向工程師,掌握JSVMP逆向技術已成為必備技能。本文將深入剖析JSVMP的工作原理,并分享實用的逆向破解思路…

【youcans論文精讀】弱監督深度檢測網絡(Weakly Supervised Deep Detection Networks)

歡迎關注『youcans論文精讀』系列 本專欄內容和資源同步到 GitHub/youcans 【youcans論文精讀】弱監督深度檢測網絡 WSDDN 0. 弱監督檢測的開山之作0.1 論文簡介0.2 WSDNN 的步驟0.3 摘要 1. 引言2. 相關工作3. 方法3.1 預訓練網絡3.2 弱監督深度檢測網絡3.3 WSDDN訓練3.4 空間…

基于Contiue來閱讀open-r1中的GRPO訓練代碼

原創 快樂王子HP 快樂王子AI說 2025年04月03日 23:54 廣東 前面安裝了vscode[1]同時也安裝了Coninue的相關插件[2],現在想用它們來閱讀一下open-r1項目的代碼[3]。 首先,從啟動訓練開始(以GRPO為例子) 第一步,使用TRL的vLLM后端…

JVM深入原理(六)(二):雙親委派機制

目錄 6.5. 類加載器-雙親委派機制 6.5.1. 雙親委派機制-作用 6.5.2. 雙親委派機制-工作流程 6.5.3. 雙親委派機制-父加載器 6.5.4. 雙親委派機制-面試題 6.5.5. 雙親委派機制-代碼主動加載一個類 6.6. 類加載器-打破雙親委派機制 6.6.1. 打破委派-ClassLoader原理 6.6.…

Linux 文件系統超詳解

一.磁盤 磁盤是計算機的主要存儲介質,它可以存儲大量二進制數據,即使斷電后也可以保證數據不會丟失。下面我們將了解磁盤的物理結構、存儲結構以及邏輯結構。 磁盤的存儲結構 1. 磁盤尋址的時候,基本單位既不是bit也不是byte,而…

2025年大模型與Transformer架構:重塑AI未來的科技革命

引言:一場關于智能的革命 想象一下,當你向一個虛擬助手提問時,它不僅能夠準確理解你的需求,還能生成一段流暢且富有邏輯的回答;或者當你上傳一張模糊的照片時,系統可以快速修復并生成高清版本——這一切的…

GO語言學習(16)Gin后端框架

目錄 ??前言 1.什么是前端?什么是后端?🌀 2.Gin框架介紹 🌷 3.Gin框架的基本使用 -Hello,World例子🌷 🌿入門示例 - Hello,World 💻補充(一些常用的網…

深入解析 Git Submodule:從基礎到高級操作指南

深入解析 Git Submodule:從基礎到高級操作指南 一、Git Submodule 是什么? git submodule 是 Git 提供的一個強大功能,允許在一個 Git 倉庫(主倉庫)中嵌入另一個獨立的 Git 倉庫(子模塊)。主倉…

電子電氣架構 --- EEA演進與芯片架構轉移

我是穿拖鞋的漢子,魔都中堅持長期主義的汽車電子工程師。 老規矩,分享一段喜歡的文字,避免自己成為高知識低文化的工程師: 周末洗了一個澡,換了一身衣服,出了門卻不知道去哪兒,不知道去找誰,漫無目的走著,大概這就是成年人最深的孤獨吧! 舊人不知我近況,新人不知我過…