Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: asdfff 04. 03. 2017, 18:47:11
-
Zdravim,
pouzivam Qt 5.7 a mam takyto problem:
QHBoxLayout* layout;
layout->setContentsMargins(0, 0, 0, 0);
layout->setSpacing(0);
layout->setMargin(0);
QLabel* l1 = new QLabel("1");
QLabel* l2 = new QLabel("2");
QLabel* l3 = new QLabel("3");
l1->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum);
l2->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum);
l3->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum);
layout->addWidget(l1, 0, Qt::AlignLeft);
layout->addWidget(l2, 0, Qt::AlignLeft);
layout->addWidget(l3, 0, Qt::AlignLeft);
setLayout(layout);
vysledkom coho je:
(http://i.imgur.com/46v304w.png)
Layout sa rovnomerne rozdeli na 3 casti, no ja potrebujem aby sa widgety radili rovno za sebou 1 | 2 | 3, bez tych medzier medzi nimi. Vie niekto ako na to?
Dakujem za odpovede
-
QSizePolicy::Minimum ?
-
já myslel že se to dělá v designeru
http://stackoverflow.com/questions/32238945/qt-odd-layout-arrangement
http://stackoverflow.com/questions/21231262/qt-arranging-ltems-in-layout
http://www.qtcentre.org/archive/index.php/t-28990.html
https://www.uloz.to/!jXKWtyiny/the-book-of-qt-4-the-art-of-building-qt-applications-pdf
http://www.ics.com/designpatterns/book/layout.html
http://doc.qt.io/qt-5/layout.html
-
Jerry vdaka za odkazy, za posledne volanie addWidget() som dal layout->addStretch() a uz to vyzera ako ma.
-
Tak to jsi byl rychlý :D; addStretch() přidá do layoutu *spacer*, takže by to mělo fungovat. Jinak se to ale opravdu lépe nakliká v designeru.