Layouting richtig bestimmen, keine Verschiebung der Elemente

Alles rund um die Programmierung mit Qt
Antworten
gast23
Beiträge: 103
Registriert: 11. August 2010 10:43

Layouting richtig bestimmen, keine Verschiebung der Elemente

Beitrag von gast23 »

Hi,

bitte diesen Code betrachten:

Code: Alles auswählen

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent)
{

    QVBoxLayout* v = new QVBoxLayout();
    v->addWidget(new QPushButton("Huuu"));
     v->addWidget(new QPushButton("Huuu"));
      v->addWidget(new QPushButton("Huuu"));
       v->addWidget(new QPushButton("Huuu"));
        v->addWidget(new QPushButton("Huuu"));
         v->addWidget(new QPushButton("Huuu"));

    QWidget* q = new QWidget();
    q->setLayout(v);

    setCentralWidget(q);

}
Wenn man das Fenster öffnet und die Größe etwas verändert werden die Abstände zwischen den Buttons größer...

Ich möchte nun das sich die Buttons nur in der Breite ausdehnen dürfen aber nicht in der Höhen (Tun sie eh nicht) + das Layout soll keine Abstände reinreißen wenn die Größe des Fenster Größer wird...

Die Buttons sollen immer unter einander bleiben...

Vielen Dank
odt
Beiträge: 128
Registriert: 12. August 2010 11:49
Kontaktdaten:

QSpacerItem

Beitrag von odt »

Versuch mal einen Vertical Spacer einzufügen

Code: Alles auswählen

v->addWidget(new QPushButton("Huuu"));
v->addSpacerItem(new [b]QSpacerItem[/b](20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding) );
Antworten