Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: asdfff 04. 03. 2017, 18:47:11

Název: Qt - rozmiestnenie v QHBoxLayout
Přispěvatel: asdfff 04. 03. 2017, 18:47:11
Zdravim,

pouzivam Qt 5.7 a mam takyto problem:

Kód: [Vybrat]
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
Název: Re:Qt - rozmiestnenie v QHBoxLayout
Přispěvatel: Janci 04. 03. 2017, 19:17:59
QSizePolicy::Minimum ?
Název: Re:Qt - rozmiestnenie v QHBoxLayout
Přispěvatel: Jerry 04. 03. 2017, 19:20:21
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
Název: Re:Qt - rozmiestnenie v QHBoxLayout
Přispěvatel: asdfff 04. 03. 2017, 19:39:46
Jerry vdaka za odkazy, za posledne volanie addWidget() som dal layout->addStretch() a uz to vyzera ako ma.
Název: Re:Qt - rozmiestnenie v QHBoxLayout
Přispěvatel: Wavelet 04. 03. 2017, 20:17:53
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.