Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用PyQt加载图像资源?_Python_Image_Pyqt_Resources_Pyside - Fatal编程技术网

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,Qt
rcc
工具本身有一个生成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,Qt
rcc
工具本身有一个生成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文件。