0
以下のコードは、QSplitter
のダイアログウィンドウを作成します。 スプリッタの左側と右側には、暗い色のQWidget
が割り当てられています。 それぞれのQWidget
レイアウトの間隔は0(ゼロ)に設定されています(余白がないはずです)。 これらの0間隔レイアウトには、明るい色のQLabelが追加されました。QSplitterの間隔を制御する方法
QWidget
の全体をQLabel
に入力して、スペースや余白を入れないようにします。したがって、QLabel
はエキスパンドしてエッジからエッジまで拡張します。理想的には、QWidgetの暗い色は見えません。 QLabel
がQWidgetの内側から外側に広がるように、コードをどのように変更できますか?
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
app = QApplication([])
window = QDialog()
window.setLayout(QVBoxLayout())
window.resize(400, 250)
splitter = QSplitter(Qt.Horizontal)
window.layout().addWidget(splitter)
for side in ['left', 'right']:
widget = QWidget()
widget.setStyleSheet("background-color:gray;")
widget_layout = QVBoxLayout()
widget_layout.setSpacing(0)
widget.setLayout(widget_layout)
label = QLabel('%s side QLabel' % side.capitalize())
label.setAlignment(Qt.AlignCenter)
label.setStyleSheet("background-color:lightgray;")
widget.layout().addWidget(label)
splitter.addWidget(widget)
window.show()
sys.exit(app.exec_())