Qt увеличение qtabwidget размер QTabBar

Мне нужно сделать вкладки, которые я ориентировал в нижней части моего QTabWidget больше. Мы будем использовать сенсорный экран, поэтому размеры по умолчанию слишком малы.

Я не вижу простого способа сделать это (в настоящее время не вижу хорошего способа даже сделать это вообще. Единственные методы, относящиеся к QTabBar, которые я вижу в QTabWidget, защищены, и я не вижу необходимости наследовать от класса, кроме как для этой явной цели).

вопрос:

Что я хотел бы чтобы сделать это, просто установите QTabBar на определенный определенный размер. Возможно ли это?

кроме этого, единственное, что я могу придумать, это подкласс QTabWidget, а затем я могу контролировать размер QTabBar, расширяя или переопределяя функции этого класса.

спасибо.

2 ответов


Если вы не хотите подкласса, вы можете использовать таблицы стилей Qt чтобы быстро установить высоту и ширину ваших вкладок, как так:

// tabWidget is a pointer to a QTabWidget
tabWidget->setStyleSheet("QTabBar::tab { height: 100px; width: 100px; }");
// each tab should now be 100x100px

обратите внимание, что таблица стилей относится к QTabBar, даже если мы вызываем setStyleSheet() на QTabWidget.


Если вы используете Qt Designer, вы можете просто поставить QTabBar::tab { height: 100px; width: 100px; } в свойстве таблицы стилей объекта QTabWidget напрямую