首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >图像QWidget

图像QWidget
EN

Stack Overflow用户
提问于 2016-06-13 22:14:27
回答 1查看 1.5K关注 0票数 0

我试图在QGridLayout中创建一个简单的PyQt5图像,但是我发现自己陷入了困境,因为QGridLayout只有通过.addWidget().addLayout()添加小部件和布局的功能。

下面是我的代码,它需要一个QWidget,但是有问题,因为我似乎找不到任何能够处理png/jpg文件的QWidgets

代码语言:javascript
复制
class myGrid(QWidget):
    def __init__(self):
        QObject.__init__(self)

        # Create Layout
        self.lay = QGridLayout()
        self.setLayout(self.lay)

        i1 = QIcon("imgs/img1.png")
        i2 = QIcon("imgs/img2.png")
        i3 = QIcon("imgs/img3.png")
        i4 = QIcon("imgs/img4.png")

        # Add Images to Layout
        self.lay.addWidget(i1, 0, 0)    # Error because type(i1) != QWidget

以上只是我想要添加到我的布局中的第一个图像。唯一的问题是,由于QIcon在技术上不是一个QWidget,所以我收到了一个编译器错误。

我查看了处理图像的其他QObjects,包括QImageQPainter,但是由于这些类都是QtGui类型的,所以不能将它们传递到网格中。

对于如何从图像生成QWidget或使用处理图像的特定QWidget有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-06-13 22:26:40

QLabel是您需要的小部件。它可以显示一个QPixmap,而不仅仅是文本。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37799993

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档