Qt Увеличить размер QTabWidget QTabBar

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

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

Вопрос:

Я хотел бы просто установить 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 напрямую

Другие вопросы по тегам