如何使用Python(pyqt)正确加载图像?

时间:2012-08-07 09:09:40

标签: python pyqt

我的申请表上有这种结构:

|-App
|
|-functions
|
|-ui
|--ui.py
|    
|images
|
|main.py

我有一个带有一些脚本的函数文件夹和一个在ui.py文件中带有PyQt生成代码的ui文件夹。

和一个main.py文件,它加载ui.py以显示接口,ui.py从根目录下的“images”文件夹中加载一些图像。

如果我直接在python上执行我的脚本(在main.py文件上使用双clic),图像就不会显示..

但如果我使用带有“python main.py”的终端,则图像显示正确。

关于ui.py的引用如下:

icon.addPixmap(QtGui.QPixmap(_fromUtf8("images/flags/MXN.png"))

1 个答案:

答案 0 :(得分:6)

使用Qt Designer Resource System为图像创建资源文件。

然后使用PyQt's pyrcc tool将Qt资源文件转换为python模块。

注意:python资源模块应与ui文件位于同一目录中。因此,如果您在Qt Designer中创建了资源文件App/resources.qrc,那么您应该将其转换为:

pyrcc4 -o App/ui/resources_rc.py App/resources.qrc

PS:

PySide的等效工具是pyside-rcc