我正在做一个关于盒子布局的 PyQt4 教程。但我不明白如何addStretch
工作。
- 如果我使用
vbox.addStretch(1)
andhbox.addStretch(1)
,这两个按钮会出现在右下方。为什么? - 如果我评论
vbox.addStretch(1)
和hbox.addStretch(1)
退出,这两个按钮会出现在我的窗口中心,它们可以水平变形,但不能垂直变形。为什么? - 如果我改变值“1”没有区别......那么这个值有什么作用?
下面是我正在使用的代码:
import sys
from PyQt4 import QtGui
class BoxLayout(QtGui.QWidget):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.setWindowTitle('box layout')
ok = QtGui.QPushButton("OK")
cancel = QtGui.QPushButton("Cancel")
vbox = QtGui.QHBoxLayout()
vbox.addStretch(1)
vbox.addWidget(ok)
vbox.addWidget(cancel)
hbox = QtGui.QVBoxLayout()
hbox.addStretch(1)
hbox.addLayout(vbox)
self.setLayout(hbox)
self.resize(100, 100)
app = QtGui.QApplication(sys.argv)
qb = BoxLayout()
qb.show()
sys.exit(app.exec_())