如何更新 QLabel 以显示 QImage

Posted

技术标签:

【中文标题】如何更新 QLabel 以显示 QImage【英文标题】:How to update a QLabel to display a QImage 【发布时间】:2012-03-06 20:00:55 【问题描述】:

我可能误解了如何做到这一点,希望有人能澄清一下。

我在 Qt Designer 中的主窗口上放置了一个QLabel。目前,当我运行程序时,它只显示字母“TextLabel”。

我有一个行编辑,我在其中输入图像的路径,然后将图像作为QImage 加载到内存中(我有这个工作)。

最后,我想显示这个QImage。我被告知这可以通过QLabels 来完成。我做了以下事情,但什么都没有发生:

ui.input_label->setPixmap(QPixmap::fromImage(my_qimage));

为什么什么都没发生?如何显示此图像?

【问题讨论】:

您知道QImage在加载后是否有效的标准是什么? @ArnoldSpence 对不起,我不明白。它是出于实验目的,所以我知道它是有效的,因为我正在输入它。 【参考方案1】:

如果您确定图像文件没问题,但问题可能在于将文件加载到QImage。如果你调用QImage::load(),你可能会得到false的返回值。

【讨论】:

有趣。我实际上是通过 OpenCV 加载它,并转换为 ypnos 的回答中概述的 QImage:***.com/questions/9590950/…。我在 OpenCV 中显示图像,这很好。我不需要做任何事情来更新主窗口来查看标签的更新? 哦,我假设您是直接从QImage 的文件加载图像。调用“setPixmap()”后,标签应自行更新并显示图像。

以上是关于如何更新 QLabel 以显示 QImage的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 USB 串行(来自 Arduino)的数据刷新/更新 QLabel?

自动调整 QLabel 的大小以适应更新的 QTableWidget 跨度

显示 QMenu 以响应 QLabel 中的右键单击,可能吗?

如何使用 QNetworkRequest 将 Qlabel 与 jpg 一起使用?

如何在每个 Qlabel PyQt5 中显示两个图像

不更新 QLabel 值