如何在Q中使用垫片

2024-06-02 10:21:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个QGroupBox分配给它的QVBoxLayout

groupBox = QtGui.QGroupBox()
layout = QtGui.QVBoxLayout()
groupBox.setLayout(layout )

然后有一个QLabel分配给布局。

label = QtGui.QLabel()   
layout.addWidget(label)

问题是QLabel位于GroupBox的中间。我希望它与GroupBox的上边缘对齐。我可能需要加些间隔物。因此,间隔符将动态调整自身大小,以填充GroupBox的空白区域,并向上推QLabel。

应该使用什么小部件和什么大小的策略作为间隔?


Tags: 间隔动态布局label边缘layoutqtguiqvboxlayout
2条回答
label = QtGui.QLabel()   
layout.addWidget(label)
verticalSpacer = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
layout.addItem(verticalSpacer)

这应该管用

在pyQt5中,QSpacerItemQSizePolicy类现在是qtwidget的一部分,因此您希望以这种方式创建垂直间隔符。。。

verticalSpacer = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) 

相关问题 更多 >