跳转到主要内容

pyqt使用资源文件

1. 创建资源文件

首先,创建一个资源文件(例如 resources.qrc),并定义所需的资源。例如:

<RCC>
    <qresource prefix="/icons">
        <file>icon.png</file>
    </qresource>
</RCC>

  • prefix:资源的前缀路径,用于在代码中访问资源。
  • <file>:资源文件的路径(相对于资源文件所在目录)

2. 将资源文件转换为 Python 代码

使用 pyrcc5 工具将资源文件转换为 Python 代码。在终端中运行以下命令:


pyrcc5 -o resources_rc.py resources.qrc

3. 在 PyQt5 应用程序中使用资源

在代码中导入生成的资源文件,并使用资源路径来加载资源。以下是完整的代码示例:



import sys
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import QIcon
import resources_rc  # 导入生成的资源文件

class ExampleApp(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        # 设置窗口标题
        self.setWindowTitle('PyQt5 窗口图标示例')
        # 设置窗口大小
        self.setGeometry(300, 300, 300, 200)
        # 使用资源文件中的图标
        self.setWindowIcon(QIcon(":/icons/icon.png"))  # 注意路径格式

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = ExampleApp()
    ex.show()
    sys.exit(app.exec_())