crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Опциональные поля в TableView
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
Теги
Выровнять по центру
Ссылка на тему
Ссылка на сообщение
Скрытый текст
Сокращение
Код с подсветкой
Offtopic
 
Удалить форматирование
Спец. элементы
Шрифт
Размер
 
Цвет шрифта
 
Отменить ввод
Вернуть ввод
Полужирный
Курсив
Подчеркнутый
 
 
Смайлики
Вставить изображение
Вставить адрес электронной почты
Цитата
Код
Раскрывающийся текст
 
Увеличить отступ
По левому краю
По центру
По правому краю
Вставить список
Вставить список

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
bo0blik Дата 21.10.2009, 10:46
 
Цитата(Litkevich Yuriy @ 21.10.2009, 8:20) *
Обрати внимание на таблицу в описании этого класса, а именно на строку:
Qt::DecorationRole | QIcon and QColor


Да, да на таблицу я долго медитировал, но так и не понял как с этим свойством работать?
Litkevich Yuriy Дата 21.10.2009, 8:20
 
Цитата(bo0blik @ 21.10.2009, 11:18) *
но как иконку добавить к надписи в данном случае?
Обрати внимание на таблицу в описании этого класса, а именно на строку:
Qt::DecorationRole | QIcon and QColor
bo0blik Дата 21.10.2009, 7:18
  Решил с помощью QStyledItemDelegate

QString ImageStyle::displayText ( const QVariant & value, const QLocale & locale ) const
{
    if(value.toString().isEmpty())
        return "Нет картинки";
    else
        return "Есть картинка";
}


Довольно удобно, но как иконку добавить к надписи в данном случае?
bo0blik Дата 21.10.2009, 3:22
 
Цитата(Litkevich Yuriy @ 20.10.2009, 22:26) *
а как ты видишь работу? Может и можно только я не пойму конечную цель. Вариантов реализации может быть много.


Ну что-то вроде функции которая вешается, к примеру, на нужную колонку, в нее попадают данные, обрабатывают и выдаются нужные.
Litkevich Yuriy Дата 20.10.2009, 21:26
 
Цитата(bo0blik @ 21.10.2009, 1:11) *
Я думал что возможно в qt есть подобный обработчик отображения.
а как ты видишь работу? Может и можно только я не пойму конечную цель. Вариантов реализации может быть много.
MoPDoBoPoT Дата 20.10.2009, 21:20
 
Цитата(bo0blik @ 20.10.2009, 22:11) *
Я думал что возможно в qt есть подобный обработчик отображения.

Конечно можно. Отнаследоваться от QSqlQueryModel и переопределить метод data(const QModelIndex &item, int role) const
bo0blik Дата 20.10.2009, 21:19
 
Цитата(Litkevich Yuriy @ 20.10.2009, 22:13) *
См. моё сообщение (обновилось)


И мое тоже :)
Litkevich Yuriy Дата 20.10.2009, 21:13
  См. моё сообщение (обновилось)
bo0blik Дата 20.10.2009, 21:11
  Litkevich Yuriy, а я и не знал что можно и такие запросы делать.

Но тем не мение такой метод не очень удобен, ибо могут возникнуть другие потребности, например иконка в ячейке, это уж таким запросом не уладишь.

Я думал что возможно в qt есть подобный обработчик отображения.
Litkevich Yuriy Дата 20.10.2009, 21:09
 
Цитата(bo0blik @ 21.10.2009, 0:18) *
Да, но через отдельный диалог.
тогда я бы использовал QSqlQueryModel, сформировал такой запрос, чтобы при не пустом (NULL) значении поля запрос возвращал бы один текст, а при пустом другой. (Оператор case можно использовать)

положим табличка MYTABLE, такая:
id | name   | status 
1  | Vas'ka | good
2  | Miha    | sleep
3  | crazy   | NULL


тогда запрос такой:
SELECT id, name, (case when status = ISNULL then "text Absent" else  "Text Presence" end) FROM MYTABLE
Просмотр темы полностью (откроется в новом окне)
RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 5.7.2025, 5:06