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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: цвет выделенной строки в QTableView  (Прочитано 4487 раз)
lasker
Гость
« : Июль 15, 2009, 11:46 »

Добрый день! Кто может подсказать, как сделать так, чтобы цвет выделенной строки не изменялся, а просто было видно  что строка активна (типа пунктира вокруг)?
Записан
lasker
Гость
« Ответ #1 : Июль 16, 2009, 09:39 »

Это возможно??
Записан
Rcus
Гость
« Ответ #2 : Июль 16, 2009, 09:43 »

Можно все, вопрос только в необходимости данного подхода, например можно взять делегат и переписать QStyleOptionViewItem и при state & QStyle::State_Selected, только я не вижу смысла.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #3 : Июль 16, 2009, 09:55 »

а стайлшитом если??
Записан
majatu
Гость
« Ответ #4 : Июль 16, 2009, 14:16 »

Код:
void VisibleDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
{
        QStyleOptionViewItem myOption = option;
        QColor c=QColor(197, 255, 183);

        if (myOption.showDecorationSelected && (myOption.state & QStyle::State_Selected))
        {
                myOption.palette.setColor(QPalette::Highlight, c);
                myOption.palette.setColor(QPalette::HighlightedText, Qt::black);
        }

        QStyledItemDelegate::paint(painter, myOption, index);
}


и задавай чего хочешь
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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