Qt 仅显示QPixmap的一部分

Qt 仅显示QPixmap的一部分,qt,qt4,Qt,Qt4,我想将pixmap设置为我的QLabel。问题是,标签中并没有显示整个图像,即只显示图像的一小部分。代码如下: QPixmap pix("c:\\images\\myimg.png")); mLabel->setPixmap(pix); 有什么问题请尝试将pixmap size设置为label size mLabel->setFixedSize(pix.size()); 如果要保持图像的纵横比,必须执行以下操作: QPixmap pix("c:\\images\\myimg.pn

我想将pixmap设置为我的QLabel。问题是,标签中并没有显示整个图像,即只显示图像的一小部分。代码如下:

QPixmap pix("c:\\images\\myimg.png"));
mLabel->setPixmap(pix);

有什么问题

请尝试将pixmap size设置为label size

mLabel->setFixedSize(pix.size());

如果要保持图像的纵横比,必须执行以下操作:

QPixmap pix("c:\\images\\myimg.png");
pix = pix.scaled(QSize(mLabel->width(),mLabel->height()), Qt::KeepAspectRatio);
mLabel->resize(pix.size());
mLabel->setPixmap(pix);
QPixmap pix("c:\\images\\myimg.png");
pix = pix.scaled(QSize(mLabel->width(),mLabel->height()), Qt::IgnoreAspectRatio);
mLabel->setPixmap(pix);
如果不想保持图像的纵横比,则必须执行以下操作:

QPixmap pix("c:\\images\\myimg.png");
pix = pix.scaled(QSize(mLabel->width(),mLabel->height()), Qt::KeepAspectRatio);
mLabel->resize(pix.size());
mLabel->setPixmap(pix);
QPixmap pix("c:\\images\\myimg.png");
pix = pix.scaled(QSize(mLabel->width(),mLabel->height()), Qt::IgnoreAspectRatio);
mLabel->setPixmap(pix);

未在布局中添加标签。在添加它之后,它工作。< /P>请考虑添加你自己的答案来解决这个问题,所以其他人可以从中受益。