В моем проекте у меня есть QTabWidget
с несколькими вкладками, каждая из которых имеет уникальный значок. Я хочу, чтобы значок менялся на более светлую версию обычного значка при выборе вкладки.
Это просто с таблицами стилей QTabBar::tab:selected{image: url(image.png);}
, однако проблема в том, что таблица стилей не может различать каждую отдельную вкладку, чтобы установить правильный значок. Это не просто значок «вкл.» и «выкл.». Существует значок «вкл» и «выкл» для 7 различных значков.
Придерживаясь метода таблицы стилей :selected
, я пытаюсь найти способ сделать это с помощью accessName. Если при создании вкладки я задаю для каждой вкладки доступное имя идентификатора типа значка (icon_1, icon_2, icon_3 и т. д.), я могу выбрать его позже в своей таблице стилей с помощью QTabBar::[accessibleName=\"icon_1\"]:selected
.
Однако я не вижу в документации ничего, что говорит о том, что я могу установить доступное имя для каждой вкладки. Это возможно? Кроме того, я знаю, что мог бы прослушивать сигнал currentIndexChanged и обновлять значок без таблиц стилей, однако фактический метод определения того, какой значок использовать для каждой вкладки, довольно трудоемок, поэтому не рекомендуется перепроверять каждую вкладку каждую время, когда индекс изменился. Не говоря уже о том, что у пользователя может быть открыто столько вкладок в любой момент времени. Есть смысл?
Можно ли установить доступное имя на вкладке? Есть ли другой способ выбора между различными вкладками с помощью таблиц стилей? Спасибо за ваше время.