PyQT中心工具栏按钮

时间:2011-12-16 16:56:25

标签: python pyqt pyqt4

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

1 个答案:

答案 0 :(得分:9)

我不确定我是否理解正确,但如果您正在寻找一种方法来将工具中的按钮置于 QMainWindow的中心位置,那么肯定是(hackish)方式。你只需要放置一个像'spacer'的小部件。这基本上是具有QWidget大小政策的expanding

这是一个最小的例子:

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