Как установить цвет фона / вкладку для изображения в QTabWidget?

После долгого статуса посетителя, наконец, это мой первый пост. Я создаю вкладки динамически в моем TabWidget(из конфигурации). Подобно; - это код на python, pyqt, ответы можно кодировать на C++, для меня это не имеет значения:) -

baseWidget = QWidget()
//fill baseWidget with other widgets
window.tabWidget.addTab(baseWidget, _fromUtf8(""))
window.tabWidget.setTabText(window.tabWidget.indexOf(baseWidget), ...)

Затем стиль через QSS, как;

QTabBar::tab {}
QTabBar::tab:selected {}
QTabBar::tab:!selected {}
QTabBar::tab:last {}
QTabBar::tab:first:!selected {}
QTabBar::tab:!selected:hover {}

На данный момент все в порядке. Но я хочу раскрасить свои вкладки индивидуально.

Как я могу достичь этого? Если это возможно, как можно установить objectName для вкладки?

Весь пост будет оценен:)

1 ответ

Изменение имени базового объекта не поможет, все, что вам нужно сделать с таблицей стилей базового объекта, это изменить фон содержимого этой панели.

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

Я пробовал кое-что, чего не читал больше нигде, и это дало странные результаты, этот подход должен был сработать. Если вы хотите изучить это и убедитесь сами:

tabWidget->setCurrentIndex(0);
tabWidget->tabBar()->setStyleSheet("background-color: red;");

tabWidget->setCurrentIndex(1);
tabWidget->tabBar()->setStyleSheet("background-color: blue;");
Другие вопросы по тегам