QLabel显示图片,QPixmap.scaled Qt::KeepAspectRatio不起作用

发布时间 2023-12-20 10:20:10作者: 飘杨......

一、问题描述以及解决办法

  Qt中QLabel可以显示图片。如下:

QLabel* label = new QLabel(this);
label->setPixmap(QPixmap)

  其中QPixmap可以缩放图片

Pixmap pixmap;pixmap.scaled(QSize(width, height), Qt::KeepAspectRatio);//按比例缩放以适应目标矩形,超出部分会被裁剪掉

  现在的问题是:Qt::KeepAspectRatio设置上之后不起作用。

  

  解决办法:

    这是因为QLabel没有设置,以下属性,设置后就可以了。

QLabel* label = new QLabel(this);
label->setScaledContents(true);