Layout mit Spacern

Alles rund um die Programmierung mit Qt
Antworten
Tilman Räger
Beiträge: 189
Registriert: 6. Juni 2007 15:23
Wohnort: Göttingen

Layout mit Spacern

Beitrag von Tilman Räger »

Hallo,
ich habe aktuell ein Problem mit dem Layout mit Hilfe von Spacern. Gibt es eine Möglichkeit, einen Spacer so einzurichten, das er den verfügbaren Platz einnimmt, ohne sich selber aktiv breit zu machen?

Im Klartext: Ich habe ein Layout mit mehreren Tabellen sowie Labels untereinander (Problem tritt meistens bei Vertikal-Spacern auf), die jedoch nicht den gesamten Platz im Fenster einnehmen. Das Ziel ist nun, das die Tabellen und Labels jeweils den für sie optimalen Platz einnehmen und nach oben zusammengeschoben werden, der Raum darunter also vom Spacer eingenommen wird. An sich ja eigentlich das, wofür so ein Spacer da ist.
Das Problem ist jedoch, das der Spacer versucht, sich breit zu machen, so das die Tabellen ihre optimale Größe nicht annehmen können. Ich habe also n Tabellen in denen ich scrollen müsste (dumm nur, das das Display z.T. ReadOnly ist und nicht die Möglichkeit/Erfordernis zum Scrollen bieten sollte) während unterhalb eigentlich noch genug Platz zur Verfügung steht um die Elemente mit optimaler Größe darzustellen.

Einzige Lösung ist bisher, den Tabellen eine Mindestgröße zu verpassen. Ich kann mir aber eigentlich nicht vorstellen, das das die einzige Lösung sein sollte - schließlich ist gerade dies doch der Zweck des Spacer. Die Größe 'LayoutStretch' hat bisher auch nichts gebracht - weise ich dem Spacer die Größe 0 zu (und den anderen Elementen die 1), habe ich den Effekt, das sich Labels und Tabellen auf Größen oberhalb ihres Optimums aufblähen, bei 0,0 habe ich den oben geschilderten Fall ebenso bei 1,1; ist der Wert für den Spacer größer als für die anderen Werte nimmt er sich noch mehr Platz!

Für ernst gemeinte Tipps (nicht RTFM :-) schon im Voraus vielen Dank

mit freundlichen Grüßen
Tilman (Räger)
Antworten