Как установить цвет фона / вкладку для изображения в 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;");