Qt解决显示图像时图像将控件撑大问题

问题

不知道为什么,我在自适应大小的控件内设置背景图像会把控件撑大,可能是自适应原因

解决

其实就是在图像显示前先约束下控件大小,图像显示后再将最大大小调大,让自适应功能将控件回归原先大小
参考:

        ui->label_7->setMinimumSize(10, 10);//设置最小尺寸
        ui->label_7->setMaximumSize(10, 10);//设置最大尺寸
        ui->label_7->setScaledContents(true);//设置label全填效果
        ui->label_7->setPixmap(QPixmap("E:/20230104112640.jpg"));//设置图像显示
        ui->label_7->setMaximumSize(16777215, 16777215);//恢复最大尺寸设置

踩坑

使用QPixmap加载图像,然后调整pixmap尺寸再显示到控件的方法也可行,但是画面太糊,对我来说不适用

QPixmap* pixmap = new QPixmap("E:/20230104112640.jpg");//加载图片
ui->label_7->setPixmap(pixmap->scaled(ui->label_7->size(), Qt::KeepAspectRatio));//把图片放到label中,其他控件加载图片思路一样的

本文为抛砖引玉,求更好的方法,求指点

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值