как изменить выделение выделения Qt qListView Icon - PullRequest
6 голосов
/ 18 февраля 2011

При использовании qlistview в режиме значков мне нужно полностью убрать подсветку при выборе значка. При использовании кода ниже текст под значком больше не подсвечивается, но я по-прежнему получаю синий цвет поверх значка при выборе

 QString stylesheet = "";
   stylesheet += "QListView::item:alternate {background-image: transparent; background-color: transparent;}";
   stylesheet += "QListView::item:selected {background-image: transparent; background-color: transparent;padding: 0px;color: black;}";
   stylesheet += "QListView::item:selected:active{background-image: transparent;background-color: transparent; color: black;}";
   stylesheet += "QListView::item:selected:!active{background-image: transparent;background-color: transparent;color: black;}";
   setStyleSheet(stylesheet);

Кто-нибудь знает, как изменить выбранный цвет поверх значка, не имея подкласса QStandardItem?

Ответы [ 2 ]

6 голосов
/ 10 мая 2012

Для QListView с QStandardItem можно делать то, что вы хотите. Просто создайте значок и добавьте одинаковое растровое изображение как для нормальных, так и для выбранных состояний. Затем установите иконку в элементе

QIcon icon;

icon.addPixmap(yourPixmap,QIcon::Normal);
icon.addPixmap(yourPixmap,QIcon::Selected);

qstandardItem.setIcon(icon);
0 голосов
/ 20 февраля 2011

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...