Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何不在QHBoxLayout中分隔小部件_Python_Pyqt - Fatal编程技术网

Python 如何不在QHBoxLayout中分隔小部件

Python 如何不在QHBoxLayout中分隔小部件,python,pyqt,Python,Pyqt,使用时: layout = QtGui.QHBoxLayout() layout.addWidget(QtGui.QPushButton()) layout.addWidget(QtGui.QPushButton()) layout.addWidget(QtGui.QPushButton()) 按钮在QHBoxLayout的宽度内自动隔开。 相反,我希望按钮被放置在一个接一个的边缘。 我尝试使用: layout.setContentsMargins(0, 0, 0, 0) la

使用时:

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
的哪个属性来覆盖自动间距?

我相信您希望按钮之间的间距可以忽略不计,比如这样的

尝试使用
layout.setspace(0)


你的方法已经是正确的了。版面上没有内容页边距,版面上也没有间距,将使按钮非常接近,间距约为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_()
在QCreator(Qt&C++)中,我在按钮后添加了
水平间隔符
,将其向左移动。
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_()