QT关于资源文件的添加使用
Qt 資源系統是一個跨平臺的資源機制,用于將程序運行時所需要的資源以二進制的形式存儲于可執行文件內部。如果你的程序需要加載特定的資源(圖標、文本翻譯等),那么,將其放置在資源文件中,就再也不需要擔心這些文件的丟失。也就是說,如果你將資源以資源文件形式存儲,它是會編譯到可執行文件內部。
使用 Qt Creator 可以很方便地創建資源文件。我們可以在工程上點右鍵,選擇“添加新文件…”,可以在 Qt 分類下找到“Qt 資源文件”:
點擊“選擇…”按鈕,打開“新建 Qt 資源文件”對話框。在這里我們輸入資源文件的名字和路徑:
點擊下一步,選擇所需要的版本控制系統,然后直接選擇完成。我們可以在 Qt Creator 的左側文件列表中看到“資源文件”一項,也就是我們新創建的資源文件:
右側的編輯區有個“添加”,我們首先需要添加前綴,比如我們將前綴取名為 images。然后選中這個前綴,繼續點擊添加文件,可以找到我們所需添加的文件。這里,我們選擇 document-open.png 文件。當我們完成操作之后,Qt Creator 應該是這樣子的:
接下來,我們還可以添加另外的前綴或者另外的文件。這取決于你的需要。當我們添加完成之后,我們可以像前面一章講解的那樣,通過使用 : 開頭的路徑來找到這個文件。比如,我們的前綴是 /images,文件是 document-open.png,那么就可以使用:/images/document-open.png找到這個文件。
這么做帶來的一個問題是,如果以后我們要更改文件名,比如將 docuemnt-open.png 改成 docopen.png,那么,所有使用了這個名字的路徑都需要修改。所以,更好的辦法是,我們給這個文件去一個“別名”,以后就以這個別名來引用這個文件。具體做法是,選中這個文件,添加別名信息:
這樣,我們可以直接使用:/images/doc-open引用到這個資源,無需關心圖片的真實文件名。
如果我們使用文本編輯器打開 res.qrc 文件,就會看到一下內容:
<RCC>
??? ? <qresource prefix="/images">
??????? ??? <file alias="doc-open">document-open.png</file>
??? ? </qresource>
??? ? <qresource prefix="/images/fr" lang="fr">
??????? ??? <file alias="doc-open">document-open-fr.png</file>
??? ? </qresource>
</RCC>
我們可以對比一下,看看 Qt Creator 幫我們生成的是怎樣的 qrc 文件。當我們編譯工程之后,我們可以在構建目錄中找到 qrc_res.cpp 文件,這就是 Qt 將我們的資源編譯成了 C++ 代碼。
注意:在沒有編譯的時候res下面不會展開,只有編譯完成才會展開文件
總結
以上是生活随笔為你收集整理的QT关于资源文件的添加使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Cracer渗透视频课程学习笔记——信息
- 下一篇: QT中添加背景图片,颜色,以及字体等