Qt designer-打包資源文件(引用圖片資源)

使用pyqt5引用外部資源文件主要有兩種方式,一是將資源文件轉換成py文件,二是在程序中通過相對路徑引用外部圖片資源
下面僅介紹第一種方法

1.創建資源文件

創建一個txt文件,鍵入如下,再將後綴改成qrc

<rcc version="1.0">
     <qresource>
     </qresource>
</rcc>

隨後創建一個新窗體,打開資源管理器進行編輯
在這裏插入圖片描述
進入資源編輯頁面,選中要編輯的資源,並添加資源路徑
在這裏插入圖片描述
點擊OK
然後我們發現原來的資源文件變成了下面這樣

<RCC>
  <qresource prefix="pic">
    <file>PyQt5-master/Chapter03/images/cartoon1.ico</file>
    <file>PyQt5-master/Chapter03/images/cartoon2.ico</file>
    <file>PyQt5-master/Chapter03/images/cartoon3.ico</file>
    <file>PyQt5-master/Chapter03/images/cartoon4.ico</file>
    <file>PyQt5-master/Chapter03/images/python.jpg</file>
  </qresource>
</RCC>

2.在窗口中使用資源文件

操作窗口文件唉,在窗口中央添加一個label控件,選中,更改其pixmap屬性,單擊後面按鈕,將值改成前面引入的資源

在這裏插入圖片描述

3.轉換資源文件

將資源文件轉爲py文件(需要注意的是,這裏使用的是pyrcc5進行轉化,同時爲了與窗口文件保持一致,須在轉化後的資源文件名字後加_rc

4.編輯邏輯文件

import sys
import apprcc_rc
from PyQt5.QtWidgets import QApplication,QMainWindow
from Mainpic import Ui_Form
class MyMainpic(QMainWindow,Ui_Form):
    def __init__(self,parent=None):
        super(MyMainpic,self).__init__(parent)
        self.setupUi(self)

if __name__=="__main__":
    app=QApplication(sys.argv)
    win=MyMainpic()
    win.show()
    sys.exit(app.exec_())

完成
在這裏插入圖片描述
補充 :
需要注意的是Qt中圖片引入路徑,與實際略有不同

self.label.setPixmap(QtGui.QPixmap(":/pic/PyQt5-master/Chapter03/images/cartoon1.ico"))

這是由於我們在編輯資源文件時,加了個“pic”標籤,所以Qt會自動把它加到路徑之中

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章