2013-12-18 1 views
1

Я пытаюсь отображать разные изображения в своем виджетах. Я помещал изображения в QLabels и изменял размер этих меток.Qt: QLabels разного размера на одной строке

Я хочу показать их рядом друг с другом, поэтому я использую 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); 

ответ

0

Вам нужно установить выравнивание как в QHBoxLayout и QLabel позиционировать элементы, как вы хотите. Посмотрите на функцию setAlignment и недвижимость alignment.

+0

Я сделал это. Но он просто помещает мои ярлыки в нижнюю часть страницы , и там нижняя линия все еще не то же самое. l-> setAlignment (QT :: AlignBottom); – Tcanarchy

+0

@ user2961097 Что относительно lab-> setAlignment (Qt :: AlignBottom); –

+0

К сожалению, никакого эффекта – Tcanarchy