Форум программистов, компьютерный форум CyberForum.ru

Qt

Войти
Регистрация
Восстановить пароль
 
 
Nell_core
2 / 2 / 1
Регистрация: 19.08.2016
Сообщений: 83
#1

Модель строк с иконками - C++ Qt

04.01.2017, 20:52. Просмотров 277. Ответов 23
Метки нет (Все метки)

Привет всем!

Уже пару дней бьюсь, пытаюсь создать модель строчек с иконками, ничего не получаецо.

Наследовал всё подряд, напирмер, QAbstractItemModel. Метод data имеет возвращаемый тип QVariant, как мне в QVariant вернуть строку с иконкой?

А что самое интересное, когда я ставлю тот же QListWidget, забиваю его QListWidgetItem'ами с иконками, потом достаю из него модель методом model() и вставляю эту модель в представление, то всё работает! Представление отлично отображает строчки с иконками. Значит, технически создать такою модель вполне возможно. Пытался даже сделать модель, которая в качестве значения возвращает QListWidgetItem, но нельзя, он не конвертируется в QVariant. Насколько я понял, Qt надо мной издевается.

Ещё и у Шлее этого нет... Кто-нибудь умеет в это?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nell_core
06.01.2017, 12:27  [ТС]     Модель строк с иконками
  #21

Не по теме:

Цитата Сообщение от Avazart Посмотреть сообщение
Так кто вам виноват что вы начали с глупых вопросов а не с книг?
Хоть Вы и тролль, но я Вам отвечу)
Цитата Сообщение от Nell_core Посмотреть сообщение
Ещё и у Шлее этого нет

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Maxim Prishchepa
Эксперт С++
1919 / 1031 / 74
Регистрация: 29.03.2010
Сообщений: 3,167
06.01.2017, 12:38     Модель строк с иконками #22
Цитата Сообщение от Nell_core Посмотреть сообщение
Какую прочитать книгу?
я бы рекомендовал не книжку, а оф. доку, это и быстрее и первоисточник
Wyn
Модератор
933 / 514 / 193
Регистрация: 14.01.2016
Сообщений: 1,717
Записей в блоге: 9
06.01.2017, 12:57     Модель строк с иконками #23
Цитата Сообщение от Nell_core Посмотреть сообщение
Пытался даже сделать модель, которая в качестве значения возвращает QListWidgetItem, но нельзя, он не конвертируется в QVariant. Насколько я понял, Qt надо мной издевается.
... Это вы тут над Qt издеваетесь. Зачем вы возвращаете элемент с данными при запросе данных у элемента? Это вам не шоу "Qt на прокачку".
Цитата Сообщение от Nell_core Посмотреть сообщение
Какую прочитать книгу?
Официальные доки:
Model/View Programming
Model/View Tutorial
Как разберётесь с этими доками и поймёте почему же у вас вид не отображал сразу два типа данных, можете в смело в таких ситуациях в будущем смотреть в сторону делегатов.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.01.2017, 13:54     Модель строк с иконками
Еще ссылки по теме:

C++ Qt QTableView не отображаем модель.
C++ Qt Модель-представление
Модель движения ног C++ Qt
C++ Qt Модель-представление
Модель. Сортировка. Переключение C++ Qt

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Avazart
7044 / 5221 / 259
Регистрация: 10.12.2010
Сообщений: 22,944
Записей в блоге: 17
06.01.2017, 13:54     Модель строк с иконками #24
Хоть я и не записывался в няньки отвечу:
Цитата Сообщение от Nell_core Посмотреть сообщение
Ещё и у Шлее этого нет
Глава 12. Питервью, или модель-представлеиние стр 202
Qt5.3 ПРОФЕССИОНАЛЬНОЕ ПРОГРАММИРОВАНИЕ НА Санкт-Петербург «БХВ-Петербург» 2015 C++

Класс QStandarditemModel позволяет напрямую сохранять данные в модели. Хоть это и не¬
много противоречит основной идее «модель-представление», но в некоторых приложениях,
которые манипулируют незначительным количеством данных, является довольно удобным
и практичным компромиссом.
Каждый элемент в модели может содержать различные данные, которые привязаны к раз¬
ным значениям ролей. Данные заданной роли можно получить с помощью метода
QAbstractitemModel::data(), передав в него индекс и значение нужной роли, — например,
DisplayRoie. Если для заданной роли не будет найдено соответствующего значения, то ме¬
тод data ( ) возвратит объект класса QVariant, не содержащий никаких данных.
Существующие представления и делегаты понимают много ролей. Вот наиболее часто ис¬
пользуемые из них:
♦ DisplayRoie — текст для показа:
DecorationRole — растровое изображение;
♦ FontRole — шрифт для текста;
♦ ToolTipRole — текст для подсказки (ToolTip);
♦ whatThisRole — текст для подсказки «Что это?»;
♦ TextColorRole — цвет текста;
♦ BackgroundColorRoie — цвет фона элемента.
И так далее...

Не по теме:

Так кто тут троль?!...

Yandex
Объявления
06.01.2017, 13:54     Модель строк с иконками
Ответ Создать тему
Опции темы

Текущее время: 14:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru