2017-11-13 120 views
1

레이아웃의 위젯 사이의 간격을 조정하는 방법을 살펴 보았습니다 : Space between widgets in QVBoxLayout. 그러나, 레이아웃 사이의 공간을 조정하는 방법을 알고 싶습니다. 레이아웃에 추가되었습니다. 예를 들어QVBoxLayout에서 레이아웃 사이의 간격을 조정하는 방법

:

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

I는 h1_layouth2_layout의 내용을하고자은 수직 레이아웃에 걸쳐 서로 이격보다는 가깝게 배치된다.

답변

1

두 개의 가로 레이아웃의 내용이 세로 레이아웃의 맨 위에 정렬되고 사용 가능한 전체 공간을 채우기 위해 늘어나지 않았다고 가정합니다. 그렇다면, 당신은 수직 레이아웃의 하단에 확장 스페이서를 추가하여이 작업을 수행 할 수 있습니다 :

layout.setAlignment(QtCore.Qt.AlignTop) 
:

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

유사한 효과를 얻을 수있는 또 다른 방법, 부모 레이아웃의 정렬을 설정하는 것입니다

+0

감사합니다. 나는이 방법을 실제로 발견했다. 그러나 완벽을 기하기 위해 원하는 효과를 얻으려면 다른 방법을 알고 있습니까? – user3731622

+1

@ user3731622 대체 솔루션을 추가했습니다. – ekhumoro