【Qt筆記】資源文件

Qt 資源系統是一個跨平臺的資源機制,用於將程序運行時所須要的資源以二進制的形式存儲於可執行文件內部。若是你的程序須要加載特定的資源(圖標、文本翻譯等),那麼,將其放置在資源文件中,就不再須要擔憂這些文件的丟失。也就是說,若是你將資源以資源文件形式存儲,它是會編譯到可執行文件內部。編輯器

使用 Qt Creator 能夠很方便地建立資源文件。咱們能夠在工程上點右鍵,選擇「添加新文件…」,能夠在 Qt 分類下找到「Qt 資源文件」:.net

點擊「選擇…」按鈕,打開「新建 Qt 資源文件」對話框。在這裏咱們輸入資源文件的名字和路徑:翻譯

點擊下一步,選擇所須要的版本控制系統,而後直接選擇完成。咱們能夠在 Qt Creator 的左側文件列表中看到「資源文件」一項,也就是咱們新建立的資源文件:版本控制

右側的編輯區有個「添加」,咱們首先須要添加前綴,好比咱們將前綴取名爲 images。而後選中這個前綴,繼續點擊添加文件,能夠找到咱們所需添加的文件。這裏,咱們選擇 Open_Sign_751px_1191333_easyicon.net.png.png 文件。當咱們完成操做以後,Qt Creator 應該是這樣子的:code

接下來,咱們還能夠添加另外的前綴或者另外的文件。這取決於你的須要。當咱們添加完成以後,咱們能夠像前面一章講解的那樣,經過使用 : 開頭的路徑來找到這個文件。好比,咱們的前綴是 /images,文件是 Open_Sign_751px_1191333_easyicon.netpng,那麼就可使用:/images/Open_Sign_751px_1191333_easyicon.net.png找到這個文件。圖片

這麼作帶來的一個問題是,若是之後咱們要更改文件名,好比將 Open_Sign_751px_1191333_easyicon.net.png 改爲 Open_Sign.png,那麼,全部使用了這個名字的路徑都須要修改。因此,更好的辦法是,咱們給這個文件去一個「別名」,之後就以這個別名來引用這個文件。具體作法是,選中這個文件,添加別名信息:資源

這樣,咱們能夠直接使用:/images/open_Icon引用到這個資源,無需關心圖片的真實文件名。編譯

若是仔細觀察,還會看到資源編輯窗口最下方有一個「語言」。這個能夠對資源進行國際化。好比咱們新建一個前綴,將語言設置爲 fr,再添加一個文件 open_1643px_1201471_easyicon.net.png:文本編輯器

咱們可使用:/images/fr/open_Icon引用到 open_1643px_1201471_easyicon.net.png 這個文件。這個「語言」的做用是,若是 Qt 發現,本機的本地化信息是 fr 的話(QLocale::system().name()返回 fr_FR),則使用:/images/fr/open_Icon這個圖片;若是不是,則默認使用:/images/open_Icon這個。引用

若是咱們使用文本編輯器打開 res.qrc 文件,就會看到一下內容:

咱們能夠對比一下,看看 Qt Creator 幫咱們生成的是怎樣的 qrc 文件。當咱們編譯工程以後,咱們能夠在構建目錄中找到 qrc_res.cpp 文件,這就是 Qt 將咱們的資源編譯成了 C++ 代碼。

相關文章
相關標籤/搜索