Python 如何使用PyQt加载图像资源?
我的应用程序中有以下结构:Python 如何使用PyQt加载图像资源?,python,image,pyqt,resources,pyside,Python,Image,Pyqt,Resources,Pyside,我的应用程序中有以下结构: |-App | |-functions | |-ui |--ui.py | |images | |main.py 我有一个包含一些脚本的functions文件夹,还有一个包含ui.py文件中PyQt生成代码的ui文件夹 以及一个main.py文件,该文件加载ui.py以显示界面,ui.py从根目录上的“images”文件夹加载一些图像 如果我直接在python上执行脚本(main.py文件上的double-clic),图像将不会显示 但是,如果我使用带有“p
|-App
|
|-functions
|
|-ui
|--ui.py
|
|images
|
|main.py
我有一个包含一些脚本的functions文件夹,还有一个包含ui.py文件中PyQt生成代码的ui文件夹
以及一个main.py文件,该文件加载ui.py以显示界面,ui.py从根目录上的“images”文件夹加载一些图像
如果我直接在python上执行脚本(main.py文件上的double-clic),图像将不会显示
但是,如果我使用带有“python main.py”的终端,则图像显示正确
ui.py上的引用如下所示:
icon.addPixmap(QtGui.QPixmap(_fromUtf8("images/flags/MXN.png"))
使用为图像创建资源文件
然后使用将Qt资源文件转换为python模块
注意:python资源模块应该与ui文件位于同一目录中。因此,如果您在Qt Designer中创建了资源文件App/resources.qrc
,则应将其转换为以下格式:
pyrcc5 -o App/ui/resources_rc.py App/resources.qrc
PySide(Qt4)的等效工具是PySide rcc
。对于PySide2/PySide6,Qtrcc
工具本身有一个生成python输出的选项:
rcc -g python -o App/ui/resources_rc.py App/resources.qrc
更新:
PyQt6现在已删除pyrcc工具(请参阅:)。使用为图像创建资源文件
然后使用将Qt资源文件转换为python模块
注意:python资源模块应该与ui文件位于同一目录中。因此,如果您在Qt Designer中创建了资源文件App/resources.qrc
,则应将其转换为以下格式:
pyrcc5 -o App/ui/resources_rc.py App/resources.qrc
PySide(Qt4)的等效工具是PySide rcc
。对于PySide2/PySide6,Qtrcc
工具本身有一个生成python输出的选项:
rcc -g python -o App/ui/resources_rc.py App/resources.qrc
更新:
PyQt6现在已经删除了pyrcc工具(请参阅:)。您确定使用相同的python版本执行双clic和终端吗?main.py的第一行是什么?在什么操作系统上?您确定使用相同的python版本,使用双clic和终端执行吗?main.py的第一行是什么?在什么操作系统上?谢谢!那很好!!:),事实上,我曾尝试使用qt资源,但我不知道如何将其解析为python文件。谢谢!那很好!!:),事实上,我试图使用qt资源,但我不知道如何将其解析为python文件。