自定义外观 QTabWidget

Posted

技术标签:

【中文标题】自定义外观 QTabWidget【英文标题】:Customize appearance QTabWidget 【发布时间】:2018-04-06 10:47:11 【问题描述】:

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

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

我也想改变外观。 QTabBar的paintEvent是唯一的方法吗?

我使用的是 Qt 和 C++,没有 QML

感谢和问候

【问题讨论】:

您可以使用样式表将选项卡向左移动 【参考方案1】:

您应该尝试使用样式表设置选项卡小部件的样式,这样:

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

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

你可以找到官方文档here和here。

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

【讨论】:

以上是关于自定义外观 QTabWidget的主要内容,如果未能解决你的问题,请参考以下文章

自定义 UISlider 外观

自定义Harbor外观,当Harbor遇上"神仙姐姐"

自定义 UINavigationBar 外观以在 CNContactPickerViewController 中显示

自定义外观 QTabWidget

自定义QT窗口部件外观之QStyle

自定义 DataTable 按钮的外观