Duilib 使用Zip 資源

2021-07-14 10:29:57 字數 1339 閱讀 4022

1.duilib 使用磁碟中的zip檔案

duilib使用zip需要重寫下面兩個虛函式:

uilib_resourcetype cjg_risksettingwnd::getresourcetype() const//指定資源型別

cduistring cjg_risksettingwnd::getzipfilename() const//指定zip檔案路徑

注意事項:

1.資源檔案路徑是大小寫敏感的。

2.指定資源路徑的時候前面不需要』/』 或者 『\』 ,直接使用risksetui/test.xml

2.如果getskinfolder 不是返回的 _t("");則需要修改getskinfile路徑以及xml裡面的部分資源路徑。

原因:zip在findflie的時候是解壓到當前資料夾的方式來查詢資源的,例如上面的risksetui.zip的檔案裡面有乙個test.xml ,按照當前資料夾解壓則是risksetui/test.xml,所以getskinfile的時候返回_t(「risksetui/test.xml」),同理其他問價以及巢狀檔案都是同乙個原理。(為了方便配置資源路徑,可以先解壓到當前資料夾,配置好之後再刪除就行)

3.如果getskinfolder返回_t("") 則什麼也不需要修改。

總結:為了以後方便資源打包最好在開始的時候getskinfolder返回_t(""),這樣工程打包的時候改動最小

eg:我們需要使用skin目錄下的資源

按照:當前資料夾解壓的模式我們需要對skin資料夾打包

2.duilib 使用資源檔案中的zip

1.假設資源id為:idr_zipres1

uilib_resourcetype cjg_risksettingwnd::getresourcetype() const//指定資源型別

lpctstr cmainwnd::getresourceid() const

2.把上面壓縮的skin.zip加入到檔案資源裡面

Duilib學習筆記《07》 資源載入

duilib的介面表現力能如此豐富,很大程度上得益於貼圖描述的簡單強大。通過之前的學習及參看相關例子,我們可以發現,在xml布局檔案中,不管是窗體背景還是控制項,都新增了對應的資源以此來美化介面。而很多人在參看例子時發現有著多種新增資源方式,其實總結下來可以簡單概括為一下兩種 簡單模式 使用檔名作為...

Duilib學習筆記《07》 資源載入

duilib的介面表現力能如此豐富,很大程度上得益於貼圖描述的簡單強大。通過之前的學習及參看相關例子,我們可以發現,在xml布局檔案中,不管是窗體背景還是控制項,都新增了對應的資源以此來美化介面。而很多人在參看例子時發現有著多種新增資源方式,其實總結下來可以簡單概括為一下兩種 簡單模式 使用檔名作為...

duilib虛擬視窗使用

方便每乙個tablayout的介面都可以用乙個類去處理 避免將所有的訊息寫到同乙個主視窗類中 方便維護 主視窗 建構函式中新增 cetcdmainwnd cetcdmainwnd xml配置 類中新增訊息處理類的成員變數 cpatmanagepage m patmanagepage 訊息處理類的宣告...