我正在尝试在我的小部件中显示不同的图像。我将图像放在 QLabel 中,然后调整这些标签的大小。
我想将它们并排显示,所以我使用了 QHBoxLayout
。但是,当它们显示时,图像的中心对齐,我希望图像的底部对齐。
到目前为止,这是我的代码:
QWidget *widget = new QWidget(ui->tagcloud);
QHBoxLayout * l = new QHBoxLayout(widget);
ui->tagcloud->setWidget(widget);
l->addStretch();
for(int i=0;i<lijst.size();++i)
{
QLabel *lab = new QLabel;
QPixmap pic((lijst[i].imgPath).c_str());
int sizeChange = 50 + (2*lijst[i].percent);
lab->setFixedSize(QSize(sizeChange, sizeChange));
lab->setPixmap(pic);
lab->setScaledContents(true);
l->addWidget(lab);
}
l->addStretch();
l->setSpacing(1);
最佳答案
您需要在 QHBoxLayout 和 QLabel 中设置对齐方式以根据需要定位项目。看看 setAlignment函数和 alignment属性(property)。
关于c++ - Qt:一行中不同大小的QLabels,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20668346/