pyqt5 的label设置图片自适应

前言

当我们使用label标签设置label.setPixmap()的时候,设置的图片总是显示一部分.为了让图片能自适应label的大小.需要使用label.setScaledContents(True)

知识点

虽然是pyqt,但是API都看C++的.
查看scaledContents : bool 的属性

This property holds whether the label will scale its contents to fill all available space.
When enabled and the label shows a pixmap, it will scale the pixmap to fill the available space.
This property’s default is false.

这个属性呢保存是否让标签缩放其内容来填充整个可用空间.
当我们启用这个属性标签显示一个图片.它就会缩放图片填充可用空间.
这个属性默认是false.

测试代码

class Test(QWidget):

    def __init__(self):
        super().__init__()
        self.initUI()


    def initUI(self):
		#设置布局
        myLayout =QGridLayout()
        #设置布局没有边缘空白
        myLayout.setContentsMargins(0,0,0,0)
        self.setLayout(myLayout)
        t =QLabel("test")
        #设置图片
        t.setPixmap(QPixmap("./exit.png"))
        t.setScaledContents(True)
        #设置label最大大小
        t.setMaximumSize(120,120)

        myLayout.addWidget(t)
        
        self.setGeometry(300,200,550,550)
        self.setWindowTitle('Test')
        self.show()

if __name__ == '__main__':

    app=QApplication(sys.argv)
    ex =Test()
    sys.exit(app.exec_())
  • 9
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值