PyQT居中工具栏按钮

3
默认情况下,PyQT中的工具栏按钮是左对齐的,是否可以使它们居中对齐,以便在调整大小时滑动?
1个回答

13

我不确定我是否理解正确,但如果您正在寻找一种方法将工具栏按钮相对于QMainWindow居中,那么是的,有一种(hackish)的方法。您只需要放置一个行为类似于“间隔器”的小部件。基本上这是一个带有expanding大小策略的QWidget

下面是一个最简示例:

import sys
from PyQt4 import QtGui

app = QtGui.QApplication(sys.argv)
main = QtGui.QMainWindow()
toolbar = QtGui.QToolBar()

# spacer widget for left
left_spacer = QtGui.QWidget()
left_spacer.setSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)
# spacer widget for right
# you can't add the same widget to both left and right. you need two different widgets.
right_spacer = QtGui.QWidget()
right_spacer.setSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)

# here goes the left one
toolbar.addWidget(left_spacer)
# some dummy actions
toolbar.addAction('one')
toolbar.addAction('two')
toolbar.addAction('three')
# and the right one
toolbar.addWidget(right_spacer)

main.addToolBar(toolbar)
main.show()
sys.exit(app.exec_())

这将为您提供以下内容: enter image description here

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接