• 3352阅读
  • 2回复

[提问]布局中qlabel显示图片后大小改变的问题 [复制链接]

上一主题 下一主题
离线panan2000
 

只看楼主 倒序阅读 楼主  发表于: 2018-03-13
我把4个qlabel放到一个gridlayout下面,Stretch都是1:1.然后将其中一张贴图

QFileInfo fileInfo("d:/1.png");
if(fileInfo.isFile())
{
        QPixmap img("d:/1.png");
        img.scaled(ui.labPic_1->size(), Qt::IgnoreAspectRatio, Qt::SmoothTransformation);
        ui.labPic_1->setPixmap(img);        
}


之后比例就成这样了,label1贴图之后就放大了。

但是贴3个label或者4个的时候比例是正常的,

setStretch用了也没反应。。
大神们能帮忙看看怎么能贴一张图的时候固定layout的比例吗?
离线yuyu414

只看该作者 1楼 发表于: 2018-03-14
    for (int i = 0; i < rowCount; i++)
    {
        ui->gridLayout->setRowStretch(i, 1);
    }
    for (int i = 0; i < columnCount; i++)
    {
        ui->gridLayout->setColumnStretch(i, 1);
    }
rowcount和columncount为gridlayout的行和列
离线panan2000

只看该作者 2楼 发表于: 2018-03-16
回 yuyu414 的帖子
yuyu414:    for (int i = 0; i < rowCount; i++)
    {
        ui->gridLayout->setRowStretch(i, 1);
    }
    for (int i = 0; i < columnCo .. (2018-03-14 09:18) 

setStretch之前就试了,没有用。
图片分辨率过大的时候图片qlabl就会放大。。
我现在是通过resizeEvent对他进行控制的
快速回复
限100 字节
 
上一个 下一个