2013-12-18 46 views
1

我試圖在我的小部件中顯示不同的圖像。我把圖像放在QLabel中,並調整這些標籤的大小。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