Russian Qt Forum
Июня 17, 2025, 02:25 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QTableView: оставить от выделения только рамку  (Прочитано 2821 раз)
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]   Вверх
  Печать  
 
Перейти в:  


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