使用时:
layout = QtGui.QHBoxLayout()
layout.addWidget(QtGui.QPushButton())
layout.addWidget(QtGui.QPushButton())
layout.addWidget(QtGui.QPushButton())
按钮在 QHBoxLayout 的宽度内自动间隔开。 相反,我希望按钮彼此相邻放置。 我试过使用:
layout.setContentsMargins(0, 0, 0, 0)
layout.importLayout.setSpacing(0)
但它对按钮间距没有影响。需要设置 QHBoxLayout
的哪个属性来覆盖自动间距?
最佳答案
您的方法已经是正确的。布局上没有内容边距以及布局上没有间距会使按钮非常靠近,间距约为 2 像素。样式表设置的负边距可以使按钮进一步靠在一起,但我不推荐它,因为它看起来不太好。
from PySide import QtGui
app = QtGui.QApplication([])
window = QtGui.QWidget()
window.setStyleSheet('QPushButton{margin-left:-1px;}') # remove this line if you want to have a tiny bit of spacing left
layout = QtGui.QHBoxLayout(window)
layout.setContentsMargins(0, 0, 0, 0)
layout.setSpacing(0)
layout.addWidget(QtGui.QPushButton('Button'))
layout.addWidget(QtGui.QPushButton('Button'))
layout.addWidget(QtGui.QPushButton('Button'))
layout.addWidget(QtGui.QPushButton('Button'))
layout.addWidget(QtGui.QPushButton('Button'))
layout.addWidget(QtGui.QPushButton('Button'))
window.show()
app.exec_()
关于python - 如何不在 QHBoxLayout 中分隔小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24708694/