Seite 1 von 1

Frage zu Layout

Verfasst: 24. Juli 2007 12:08
von D_ron
Hallo!

ich habe ein kleines Problem mit meinem Layout.
Es ist wie folgt aufgebaut:

Hauptlayout (QVBoxLayout): Beinhaltet insgesamt 2 weitere Layouts A und B (QVBoxLayout).

Wenn ich meinen Dialog aufrufe dann vergrößert sich der Abstand ZWISCHEN Layout A und B. Das möchte ich vermeiden.

Hier meine bisherige Implementierung:

Code: Alles auswählen

mainLayout = new QVBoxLayout(this);

tabLayout = new QVBoxLayout();
tabLayout->addWidget(tabPages);
tabLayout->addStretch(1);
//add the tab layout to the main layout
mainLayout->addLayout(tabLayout);


editLayout = new QVBoxLayout();
edOutput = new QTextEdit();
editLayout-> addWidget(edOutput);
//add the edit layout to the main layout
mainLayout->addLayout(editLayout);

Zwischen dem tabLayout und dem editLayout entsteht der nicht gewünschte Freiraum, wenn ich den Dialog vergrößere.

Danke für die Hilfe!

Verfasst: 24. Juli 2007 12:20
von upsala
Du hast 2 gleiche VBox-Layouts in einem VBox-Layout. Warum packst du nicht alles in ein VBox-Layout? Außerdem fügtst du dem ersten Layout ein 'Stretch' hinzu. Das ist der Abstand, der bei dir auftaucht.

Danke erstmal

Verfasst: 24. Juli 2007 12:23
von D_ron
upsala hat geschrieben:Du hast 2 gleiche VBox-Layouts in einem VBox-Layout. Warum packst du nicht alles in ein VBox-Layout? Außerdem fügtst du dem ersten Layout ein 'Stretch' hinzu. Das ist der Abstand, der bei dir auftaucht.
Ich habe das Stretch hinzugefügt damit sich das tabWidgeht nicht vergrößert wenn ich den Dialog größer ziehe. Das Argument mit den Layouts ist jedoch plausibel und wird behoben.
Leider stehe ich damit aber wieder am Anfang meines Problems.
Frage daher: Wie vermeide ich das sich das tabwidget vergrößert wenn ich das stretch nach dem ersten layout entferne?

Verfasst: 24. Juli 2007 12:28
von upsala
Entweder mit der SizePolicy spielen (Kann man im Designer testen) Oder eine Max. Größe vorgeben (unschön)

Verfasst: 24. Juli 2007 12:31
von D_ron
ich gehe den weg über den designer