当前位置: 首页 > 面试题库 >

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

申高峰
2023-03-14
问题内容

我的应用程序具有以下结构:

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

我有一个包含一些脚本的功能文件夹,以及一个在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 Designer资源系统为图像创建资源文件。

然后使用PyQt的pyrcc工具将Qt资源文件转换为python模块。

注意:python资源模块应与ui文件位于同一目录中。因此,如果您App/resources.qrc在Qt
Designer中创建了资源文件,则应按以下方式进行转换:

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

PS:

PySide的等效工具是pyside-rcc



 类似资料:
  • 我搜索过类似的问题,但没有找到解决方案。我有16位灰度图像,我正在尝试将它们放入keras ImageDataGenerator中。当使用诸如:flow_from_dataframe之类的函数时,它会生成所有具有相同像素值的图像(不正确)。 我尝试使用keras preprocess_输入,通过自定义预处理函数将其重新缩放到[0,1],再缩放到[-1,1],但这些都不起作用。我还在ImageDat

  • 问题内容: 我读了这篇文章《如何真正地,真正地使用QThreads》。完整说明,它说而不是子类qthread和重新实现run(),应使用moveToThread(QThread *)使用moveToThread将QObject推送到QThread实例上 这是C ++示例,但我不知道如何将其转换为python代码。 我一直在使用这种方法来生成qthread,但是如您所见,它使用的是不推荐的方式。我如

  • 问题内容: 我正在阅读有关PyQt5的一些文档,以提出一种简单的信号插槽机制。由于设计方面的考虑,我停了下来。 考虑以下代码: 为了跟踪对滑块所做的更改,我仅打印并记录所做的更改。我对代码不满意的是,我需要调用三次插槽以将相同的信息发送到3个不同的插槽。 是否可以创建自己的将整数发送到单个插槽的函数。插槽功能又会发出需要进行的更改吗? 也许我不完全了解它的目的,因为在PyQt Signal-Slo

  • react项目为了做性能优化减小包体积在项目中用了大量的React.lazy加载组件进行代码分割,效果也挺明显,包大小从1.4M缩小到110KB但是到生产后监控到通过React.Lazy这种方式加载组件会有失败的场景(走到了代码的catch)。请问下这种场景页面是不是会报错白屏(复现不出来不知道现象是怎么样的) 请问各位大佬这种情况该怎么处理啊?添加重试功能? 还是像官方的处理一样添加ErrorB

  • 问题内容: 我在python 2.7中有一些代码,我想将它们全部转换成python 3.3代码。我知道可以使用2to3,但是我不确定如何使用它。 问题答案: 安装以下模块,该模块将2to3命令直接添加到entry_points。 正如在2to3 docs 上所写,要将整个项目从一个目录树转换到另一个目录树,请使用:

  • 我是flutter的新手,上周才开始。我正在从在线课程中学习,然后我想在我的flutter应用程序中加载一个图像。但有一个错误是: