2017-11-13 7 views
1

Ich habe gesehen, wie Sie den Abstand zwischen Widgets in einem Layout anpassen können: Space between widgets in QVBoxLayout. Ich möchte jedoch wissen, wie man den Abstand zwischen Layouts einem Layout anpassen kann.So passen Sie den Abstand zwischen Layouts in einem QVBoxLayout an

Zum Beispiel:

layout = QVBoxLayout() 
h1_layout = QHBoxLayout() 
h2_layout = QHBoxLayout() 
layout.addLayout(h1_layout) 
layout.addLayout(h2_layout) 

Ich mag den Inhalt h1_layout und h2_layout zu schließen, anstatt über das vertikale Layout im Abstand zueinander angeordnet werden.

Antwort

1

Ich nehme an, Sie möchten, dass der Inhalt der beiden horizontalen Layouts am oberen Rand des vertikalen Layouts ausgerichtet und nicht gestreckt wird, um den gesamten verfügbaren Platz zu füllen. Wenn ja, können Sie dies durch Hinzufügen eines expandierenden Abstandshalter an der Unterseite des vertikalen Layout erreichen können:

layout = QVBoxLayout() 
h1_layout = QHBoxLayout() 
h2_layout = QHBoxLayout() 
layout.addLayout(h1_layout) 
layout.addLayout(h2_layout) 
# add expanding spacer 
layout.addStretch() 

Ein anderer Weg, um einen ähnlichen Effekt zu erzielen, ist die Ausrichtung des übergeordneten Layout einstellen:

layout.setAlignment(QtCore.Qt.AlignTop) 
+0

Danke. Ich habe diese Methode auch gefunden. Aber kennen Sie aus Gründen der Vollständigkeit den gewünschten Effekt? – user3731622

+1

@ user3731622. Ich habe eine alternative Lösung hinzugefügt – ekhumoro

Verwandte Themen