Russian Qt Forum
Ноябрь 22, 2024, 22:35 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QTableView: оставить от выделения только рамку  (Прочитано 2725 раз)
titan83
Гость
« : Август 17, 2015, 21:08 »

Коллеги, здравствуйте. Qt 4.8.6.
Второй день не могу решить несложную (как казалось в начале) задачу: есть QTableView, есть модель, которая выдает разные BackgroundColorRole и TextColorRole в зависимости от свойств ячейки, все рисуется хорошо. Но есть задача: при выделении ячейки не менять цвет выделения (Highlighted, HighlightedTextColor), а оставлять те цвета, которые были у ячейки до выделения (чтобы пользователь видел свойства выделенной ячейки), в качестве указателя выделения используется исключительно толстая (2-3 пикселя) рамка вокруг выделенной ячейки, т.е. надо просто не рисовать выделение.
Я уже перепробовал и стили (через них сделал рамку), и работу с палитрой - результат один - я могу только выставить какие-то конкретные цвета для ячейки, но transparent не получается использовать нигде (selection-background-color: transparent, QColor(Qt::transparent)). Если делаю transparent, то получаю белую ячейку.
Делегат для этой таблицы есть, но пока он используется исключительно для обработки ввода пользователя, но если уж простыми средствами никак не получится, то придется переопределять paint().
Спасибо.
« Последнее редактирование: Август 17, 2015, 22:01 от titan83 » Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #1 : Август 17, 2015, 21:38 »

придется переопределять psint().
Спасибо.
Не за что.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.045 секунд. Запросов: 22.