如何在 TabWidget 上水平居中 TabBar
How to center TabBar horizontally on the TabWidget
这是一个可以解释我想要的内容的简短示例:
而不是
| TAB 1 | TAB 2 | Tab 3 |XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
我想要
XXXXXXXXXXXXXXXXXX| TAB 1 | TAB 2 | Tab 3 |XXXXXXXXXXXXXXXXXX
注意:选项卡的数量不会改变,它是固定的。
Mac 样式默认将选项卡置于中心,但对于其他样式(Fusion、Windows 等),您可以将选项卡栏对齐方式设置为 sheet.
import sys
from PyQt5.QtWidgets import *
class Template(QWidget):
def __init__(self):
super().__init__()
tab = QTabWidget()
tab.addTab(QWidget(), 'TAB 1')
tab.addTab(QWidget(), 'TAB 2')
tab.addTab(QWidget(), 'TAB 3')
grid = QGridLayout(self)
grid.addWidget(tab)
self.setStyleSheet('''
QTabWidget::tab-bar {
alignment: center;
}''')
if __name__ == '__main__':
app = QApplication(sys.argv)
app.setStyle('Fusion')
window = Template()
window.show()
sys.exit(app.exec_())
结果:
这是一个可以解释我想要的内容的简短示例:
而不是
| TAB 1 | TAB 2 | Tab 3 |XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
我想要
XXXXXXXXXXXXXXXXXX| TAB 1 | TAB 2 | Tab 3 |XXXXXXXXXXXXXXXXXX
注意:选项卡的数量不会改变,它是固定的。
Mac 样式默认将选项卡置于中心,但对于其他样式(Fusion、Windows 等),您可以将选项卡栏对齐方式设置为 sheet.
import sys
from PyQt5.QtWidgets import *
class Template(QWidget):
def __init__(self):
super().__init__()
tab = QTabWidget()
tab.addTab(QWidget(), 'TAB 1')
tab.addTab(QWidget(), 'TAB 2')
tab.addTab(QWidget(), 'TAB 3')
grid = QGridLayout(self)
grid.addWidget(tab)
self.setStyleSheet('''
QTabWidget::tab-bar {
alignment: center;
}''')
if __name__ == '__main__':
app = QApplication(sys.argv)
app.setStyle('Fusion')
window = Template()
window.show()
sys.exit(app.exec_())
结果: