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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Выделение модифицированных данных модели  (Прочитано 3315 раз)
fear
Гость
« : Октябрь 29, 2006, 16:44 »

Как можно осуществить выделение модифицированных данных модели (жирным шрифтом или цветом). Т.е. чтобы при изменениии из view`ера данных можели они отображались иначе.
Записан
Tonal
Гость
« Ответ #1 : Октябрь 29, 2006, 17:29 »

Возврати из метода data объект шрифта при запросе роли FontRole
Вот пример кода на PyQt, перевести на С++ - элементарно
Код:

  def data(self, index, role):
    if not index.isValid():
      return QtCore.QVariant()

    if role == QtCore.Qt.FontRole:
      simp = index.internalPointer()
      if self.pred and self.pred(simp):
        return QtCore.QVariant(self.inc_font)
      return QtCore.QVariant()

    if role not in (QtCore.Qt.DisplayRole, QtCore.Qt.EditRole):
      return QtCore.QVariant()

    simp = index.internalPointer()
    if not simp:
      return QtCore.QVariant()

    return QtCore.QVariant(self.hdr[index.column()][1](self, simp))

Записан
bigirbis
Гость
« Ответ #2 : Октябрь 29, 2006, 18:34 »

Собственно, на плюсах (применительно к QStandardItemModel):

Код:
void slotItemChanged( QStandardItem * item )
{
 if( !item )
  return;
 QFont font = item->data( Qt::FontRole );
 font->setBold( true );
 item->setData( font, Qt::FontRole );
 item->setData( QColor( Qt::red ), Qt::TextColorRole );
}
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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