我有一个分类QTabWidget并且有两个标签。我已经覆盖了QTabWidget的:: resizeEvent()以更改选项卡的宽度,因此它们可以占用QTabWidget的一半宽度。在TAB1(左标签)中,我有一个水平分割器(QSplitter),它将标签分成两个相等的部分,每个标签显示不同的QWidget。这一切都很好,除了QTabBar的左上角X偏移是右边几个像素。我认为QTabBar本身在右边几个像素处移动。我该如何解决这个问题?
以下是代码:
void WelcomeTabWidget::resizeEvent(QResizeEvent *event) {
tabBar()->setMinimumWidth(event->size().width());
tabBar()->setContentsMargins(0, 0, 0, 0);
_splitter->setSizes({event->size().width() / 2, event->size().width() / 2});
//The line below does not have any effect, so might as well remove it.
QTabWidget::resizeEvent(event);
}
这是视觉上的样子(偏移在红色的两个地方标记):
我该如何解决这个问题?
答案 0 :(得分:0)
这是因为为整个应用程序设置的样式表而发生的:
QTabWidget::tab-bar {
left: 5px; /* move to the right by 5px */
}
所以,没关系:)