crossplatform.ru

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

> QVariant data() роли.
Ponchikus
  опции профиля:
сообщение 15.7.2015, 3:47
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 21
Регистрация: 25.6.2015
Пользователь №: 4411

Спасибо сказали: 0 раз(а)




Репутация:   0  


Здравствуйте!!!

Начал потихоньку изучать модель/представление.

Появилось пару вопросов, прошу разъяснить мне простым языком некоторые моменты.
А именно.

Первое. Как вообще использовать роли ? Как они вызываются в приложении, для чего они вообще нужны и что с ними можно делать??

Второе. Функция QVariant data(const QModelIndex &index, int role) const; Когда она вызывается? Кто ее вызывает? Сама роль вызывает эту функцию?

Третье. В документации, есть описание -
Описание
Роли элемента
Роль указывает модели, данные какого типа будут переданы. Представления могут отображать роли различными способами, поэтому важно обеспечить информацию, соответствующую каждой роли.

Не могли бы вы пояснить ее более простыми словами, с примерами, если можно.

Помогите понять, что-то вообще не могу сообразить как все устроено...

СПАСИБО!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Ponchikus
  опции профиля:
сообщение 15.7.2015, 17:18
Сообщение #2


Студент
*

Группа: Участник
Сообщений: 21
Регистрация: 25.6.2015
Пользователь №: 4411

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата
Нужно прояснить, что значит "вызывает роли", пока я не понял :lol:


Проясняю :lol: . "Вызывает роли". Имеется ввиду, что, у элемента данных, т.е. 29, имеется набор ролей, в смысле у каждого элемента данных, есть его собственный набор ролей(Qt::DisplayRole, Qt::ToolTipRole, и т.д.) У 29, свой Qt::DisplayRole, у 15 свой Qt::DisplayRole. И вот когда я навожу мышку на элемент 29, то он передает в функцию data() именно свою роль Qt::ToolTipRole. А 15 будет передавать свою роль Qt::DisplayRole.

Я правильно понимаю? Это так ??


Цитата
QVariant, который вернется из функции data.


Все равно не могу понять... :(
Получается если в модели лежат данные типа int (29, 15, 5), то QVariant вернет int ?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.11.2024, 6:31