Название: Выделение ячейки QTableView цветом Отправлено: Astrologer от Октябрь 26, 2010, 10:22 Всем привет. Как выделить определенную ячейку/ки QTableView, скажем, красным цветом? Заранее спасибо.
Название: Re: Выделение ячейки QTableView цветом Отправлено: GreatSnake от Октябрь 26, 2010, 10:31 Код
Название: Re: Выделение ячейки QTableView цветом Отправлено: Astrologer от Октябрь 26, 2010, 10:50 Спасибо. Но почему то не работает.
Код
Название: Re: Выделение ячейки QTableView цветом Отправлено: GreatSnake от Октябрь 26, 2010, 11:08 Должно работать. Копайте дальше...
Название: Re: Выделение ячейки QTableView цветом Отправлено: Пантер от Октябрь 26, 2010, 11:28 view->setModel(m); - зачем??? Ведь QAbstractItemModel* m = view->model();
Модель самописная? Название: Re: Выделение ячейки QTableView цветом Отправлено: Astrologer от Октябрь 26, 2010, 11:29 Без этой строки тоже не работает. Модель - QSqlQueryModel.
Название: Re: Выделение ячейки QTableView цветом Отправлено: Пантер от Октябрь 26, 2010, 11:36 Гык. А ты уверен, что можешь вносить изменения в QSqlQueryModel? ;)
Название: Re: Выделение ячейки QTableView цветом Отправлено: GreatSnake от Октябрь 26, 2010, 11:42 Цитировать Модель - QSqlQueryModel. Ну дык, надо было сразу про это говорить.Цитировать The QSqlQueryModel model is read-only by default. To make it read-write, you must subclass it and reimplement setData() and flags(). Another option is to use QSqlTableModel, which provides a read-write model based on a single database table. Название: Re: Выделение ячейки QTableView цветом Отправлено: Astrologer от Октябрь 27, 2010, 11:31 Спасибо. Пока от этой идеи отказался, ибо не нужно стало.
Название: Re: Выделение ячейки QTableView цветом Отправлено: kowsan от Октябрь 27, 2010, 13:43 Не работает. В чем может быть дело?
Код: reqModel->setTable("activationrequest"); Код: QSqlTableModel *reqModel; Название: Re: Выделение ячейки QTableView цветом Отправлено: nitro2005 от Октябрь 27, 2010, 14:16 Для оформления лучше установить QItemDelegate, например:
Код: class MyItemDelegate : public QItemDelegate Название: Re: Выделение ячейки QTableView цветом Отправлено: GreatSnake от Октябрь 27, 2010, 14:19 Цитировать Для оформления лучше установить QItemDelegate kowsan это не поможет, т.к. у него не отрабатывает установка цвета ячейки.Название: Re: Выделение ячейки QTableView цветом Отправлено: nitro2005 от Октябрь 27, 2010, 14:23 Цитировать Для оформления лучше установить QItemDelegate kowsan это не поможет, т.к. у него не отрабатывает установка цвета ячейки.Ничто не мешает закрасить ее в QItemDelegate::paint() :-) Извращение, конечно, но работает всегда. :) Название: Re: Выделение ячейки QTableView цветом Отправлено: GreatSnake от Октябрь 27, 2010, 14:28 Цитировать Ничто не мешает закрасить ее в QItemDelegate::paint() :-) Извращение, конечно, но работает всегда. Согласен. И это единственное решение для read-only модели. В данном случае это будет workaround)Название: Re: Выделение ячейки QTableView цветом Отправлено: kowsan от Октябрь 27, 2010, 14:34 У меня вроде не RO модель
Цитировать The QSqlQueryModel model is read-only by default. To make it read-write, you must subclass it and reimplement setData() and flags(). Another option is to use QSqlTableModel, which provides a read-write model based on a single database table. Название: Re: Выделение ячейки QTableView цветом Отправлено: nitro2005 от Октябрь 27, 2010, 14:45 У меня вроде не RO модель requestsAllFilterModel - это прокси-модель скорее всего. Не знаю, дает ли она делать setData для QSqlTableModel. Последняя скорее всего RO. |