最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

打包資源文件

2022-01-06 16:33 作者:海鷗之道  | 我要投稿

使用PyQt 5生成的應(yīng)用程序引用圖片資源主要有兩種方法,第一種方法是將資源文件轉(zhuǎn)換為Python文件,然后引用Python文件;第二種方法是在程序中通過相對(duì)路徑引用外部圖片資源。由于第一種方法會(huì)涉及Qt Designer,所以放在本章介紹;對(duì)于第二種方法,使用起來非常簡(jiǎn)單,我后面也會(huì)介紹。下面詳細(xì)介紹第一種方法的實(shí)現(xiàn)過程。

一、使用Qt Designer 加載資源文件

在 Qt Designer中設(shè)計(jì)界面時(shí)是不能直接加入圖片和圖標(biāo)等資源的,而是需要在PyQt開發(fā)目錄下編寫.qrc文件(可以用文本編輯器打開擴(kuò)展名為.qrc的資源文件)。

(1)新建一個(gè)資源文件apprcc.qrc,它的內(nèi)容如下:

(2)打開Qt Designer,新建一個(gè)類型為 Widget的簡(jiǎn)單窗體,該窗體文件名為MainWin02.ui。然后打開資源瀏覽器,按如下圖所示進(jìn)行操作。

首先進(jìn)入資源編輯界面,然后打開資源文件,這里打開上面創(chuàng)建的資源文件apprcc.qrc。接下來選中apprcc.qrc,設(shè)置圖片資源的前綴為 pic。最后添加或刪除圖片資源。

添加完成后,資源瀏覽器效果如下如:

按照以上步驟添加圖片資源后,用文本編輯器查看apprcc.qrc文件,發(fā)現(xiàn)它是XML格式的。

二、在窗體中使用資源文件

1.使用Qt Designer在窗體中放置控件

繼續(xù)使用Qt Designer操作 MainWin02.ui文件。在 Qt Designer 窗口左側(cè),將Display Widgets欄中的Label控件拖到窗體Form中間并選中它,然后在Qt Designer窗口右側(cè)的屬性編輯器中找到 pixmap屬性,單擊其后面的按鈕,把它的值改為資源文件中的一張圖片,如圖所示。

2. 將.ui文件轉(zhuǎn)換為.py文件

使用pyuic5命令將.ui文件轉(zhuǎn)換為.py文件。

生成的完整代碼如下:

為了使窗口的顯示和業(yè)務(wù)邏輯分離,再新建一個(gè)調(diào)用窗口顯示的文件 CallMainWin02.py,其完整代碼如下:

運(yùn)行 CallMainWin02.py文件,會(huì)拋出如下異常信息,提示在 MainWin02.py 中找不到模塊apprcc_rc.

這說明在腳本中使用以下代碼導(dǎo)入的模塊異常。

調(diào)用腳本還差關(guān)鍵的一步,就是將.qrc文件轉(zhuǎn)換為.py文件,然后導(dǎo)入正常的.py資源文件。

3、 轉(zhuǎn)換資源文件

使用PyQt 5提供的pyrcc5命令將apprcc.qrc文件轉(zhuǎn)換為apprcc_rc.py 文件((之所以添加rc,是因?yàn)镺t Designer 導(dǎo)入資源文件時(shí)默認(rèn)是加_rc 的,這里是為了與Qt Designer一致)。

轉(zhuǎn)換完成后,在同級(jí)目錄下會(huì)多出一個(gè)與.qrc文件同名的.py文件。查看apprcc_rc.py文件,其內(nèi)容如下:

可以看出,該文件已經(jīng)使用QtCore.qRegisterResourceData進(jìn)行了初始化注冊(cè),所以可以直接引用該文件。

4、導(dǎo)入.py資源文件

在界面文件 Main Win02.py 中,需要使用以下代碼直接導(dǎo)入.py資源文件。

在 Qt Designer中使用圖片資源時(shí),圖片資源的引入路徑是冒號(hào)“:”加圖片的路徑,示例代碼如下:

注意到上面的路徑與qrc文件的路徑稍微有些不同,多了一個(gè)前綴“pic”,原因是Qt Designer 會(huì)自動(dòng)根據(jù)qrc中的qresource標(biāo)簽來調(diào)整這個(gè)路徑。如圖所示,在qresource標(biāo)簽中有一個(gè)“pic”屬性,Qt Designer會(huì)自動(dòng)把“pic”添加到圖片路徑i中。

運(yùn)行CallMain Win02.py文件,顯示效果如圖所示。

運(yùn)行腳本一切正常,可以在窗口中看到所導(dǎo)入的圖片資源。



打包資源文件的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
两当县| 山西省| 浦东新区| 东台市| 台中县| 淅川县| 开原市| 沙田区| 伽师县| 合山市| 西藏| 彭阳县| 舞钢市| 瓮安县| 汉寿县| 通州市| 任丘市| 沅江市| 察雅县| 罗定市| 黔西县| 岐山县| 和静县| 外汇| 无棣县| 新兴县| 大关县| 龙胜| 濮阳县| 张家港市| 惠东县| 宽城| 太仆寺旗| 阳曲县| 大方县| 祁门县| 高台县| 如皋市| 松原市| 中卫市| 东城区|