问题描述
想设置图片随着Qt界面的变化而改变大小
解决过程
- Qt显示设置成固定大小
问题:看起来很别扭 - 将最大化和最小化分别设定一个固定值
问题:随意改变大小的时候比较难受,在最大化时,由于固定值过大,无法最小化 - 继续查找解决方案,最后得到办法
解决办法
下面4步在qt Designer中完成
1.让显示图片的QLable的所在的框中使用网格布局,布局中的其他空间可以固定大小;
2.让显示在QLabel中的内容居中显示(Alignment的Center属性)
3.设置合适的margin值
4.将该选项打勾setScaledContents
下面步骤在代码中完成
QPixmap *pixmap = new QPixmap(":....png");//加载图片
pixmap->scaled(ui->label->size(), Qt::KeepAspectRatio);//设置图片大小
//ui->label->setScaledContents(true);//设置label全填效果(可以在上面的第4步完成)
ui->label->setPixmap(*pixmap);//把图片放到label中,其他控件加载图片思路一样的
至此,问题解决
参考博客
https://blog.csdn.net/qq_39576599/article/details/87966652