У меня есть подкласс QTabWidget и там две вкладки. Я переопределил :: resizeEvent () QTabWidget, чтобы изменить ширину вкладок, чтобы они могли занимать половину ширины QTabWidget. В TAB1 (левая вкладка) у меня есть горизонтальный разделитель (QSplitter), который делит вкладку на две равные части, в каждой из которых отображается другой QWidget. Все работает нормально, за исключением того, что смещение по оси X в верхнем левом углу QTabBar на несколько пикселей вправо. Я думаю, что сам 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);
}
Вот как это выглядит визуально (смещение отмечено в двух местах красным):
Как я могу это исправить?





Это происходило из-за таблиц стилей, которые были установлены для всего приложения:
QTabWidget::tab-bar {
left: 5px; /* move to the right by 5px */
}
Так что все нормально :)