自定义外观 QTabWidget

Customize appearance QTabWidget

我目前正在开发 Qt 应用程序。我正在使用带有多个选项卡的 QTabWidget。

QTabWidget 嵌入到 QVBoxLayout 中。我的问题是添加的标签显示居中,我希望它们左对齐。我怎样才能做到这一点?

我也想换个造型。重写QTabBar的paintEvent是唯一的方法吗?

我正在使用 Qt 和 C++,没有 QML

感谢和问候

您应该尝试使用样式 sheet 来设置选项卡小部件的样式:

QString ss = "QTabWidget::tab-bar { alignment: left; }";
ui->tabWidget->setStyleSheet(ss);

不过,可以使用设计器设置样式 sheet。只需右键单击小部件并从弹出菜单中选择 更改样式sheet ...,然后在对话框中插入样式并单击 确定 按钮完成后,或 应用 按钮在关闭对话框前检查效果。

你可以找到官方文档here and here

您可以参考 this post 了解如何进一步设置标签小部件的样式。