如何将QImage(或类似的东西)插入到QLabel中?

0 投票
3 回答
1998 浏览
提问于 2025-04-17 17:50

我在QLabel里同时有文字和图片,所以直接用setPixmap的方法不太够用。
我知道QLabel可以通过设置HTML标签来从文件加载图片,比如用这个代码 <img src="path_to_file" />。但是我想知道怎么从内存里加载图片(比如QImage)呢?因为有些图片用得比较频繁,如果每次都从文件里加载同一张图片,可能会影响性能。

3 个回答

0

你有两个选择:

  1. 使用两个标签,一个显示文字,另一个显示图片。
  2. 使用QPainter这个工具,把文字画在图片上面。
0

你还可以为你的QLabel设置样式表,方法是这样写:-
QLabel{
background-image: url(/images/button.png);

1

QLabel 可以接收 QPixmaps,而 QPixmaps 可以通过 QImage 来创建。我对 Python 的接口不太了解,但也许这对你有帮助:

在 C++ 中,你可以这样设置一张图片:

QLabel label;
QImage image("path_to_file");
QPixmap pixmap = QPixmap::fromImage(image);
label.setPixmap(pixmap);

撰写回答