pyqt5をいじり始めたばかりで、ウィジェットをQVBoxLayoutの一番上にプッシュし、QHBoxLayoutを残す方法を考えていました。現在 addStretch() を使用すると、ウィジェットが下/右にプッシュされます。絶対配置の使用は避けたいと思います。
self.tabColor.layout = QVBoxLayout(self)
self.tabColor.layout.addStretch()
## FOR CONTROL
lbl_control = QLabel(self)
lbl_control.setText("control")
le_control = QLineEdit(self)
hbox_control = QHBoxLayout()
hbox_control.addStretch(1)
hbox_control.addWidget(lbl_control)
hbox_control.addWidget(le_control)
## FOR UNKNOWN
lbl_unknown = QLabel(self)
lbl_unknown.setText("unknown")
le_unknown = QLineEdit(self)
hbox_unknown = QHBoxLayout()
hbox_unknown.addStretch(1)
hbox_unknown.addWidget(lbl_unknown)
hbox_unknown.addWidget(le_unknown)
self.tabColor.layout.addLayout(hbox_control)
self.tabColor.layout.addLayout(hbox_unknown)
self.tabColor.setLayout(self.tabColor.layout)
使用しself.tabColor.layout.setDirection(3)
ました。水平レイアウトを上に配置しますが、順序が反転しているようです。基本的に「不明」が最初で、次に「制御」になります。それは大したことではありませんが、私が試すことができる他のオプションがあるかどうか疑問に思っていました