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