| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > Делегат в Qml |
| Автор: vlarry 9.4.2016, 08:30 | ||||
| Добрый день, форумчане. Есть элемент модели такого типа:
свойство type_item может иметь разные значения (типы) и соответственно в зависимости от типа должна отображаться соответствующая фигура. Как можно сделать такой делегат? Если для определенного типа, то проблем нет:
А как в зависимости от типа создавать динамически? Пробовал по разному, но ничего не получилось. В Qml знаний маловато... Спасибо. |
| Автор: ss 10.4.2016, 21:01 | ||
|
| Автор: vlarry 11.4.2016, 12:32 | ||
| Спасибо за ответ. Попробовал, но не получилось... Сделал так:
в консоли выводит: Invalid component body specification |
| Автор: vlarry 11.4.2016, 12:53 | ||
Судя по документации, то так и не получится, т.к. MapItemView должен содержать ровно один корневой объект:
Как это можно обойти? Спасибо. |
| Автор: vlarry 11.4.2016, 13:22 |
| Если попытаться, все MapItem обернуть в один Item {}, то пишет в консоли, что такой итем не поддерживается...У кого есть какие идеи? Спасибо. |
| Автор: vlarry 11.4.2016, 13:54 | ||
Обернул через Item:
Как теперь добраться до свойства модели? |
| Автор: ss 11.4.2016, 22:28 | ||||||
а что говорит ? попробуй в строке visible: model.type_item === "rectangle" ? true : false убрать слово "model." вот так visible: type_item === "rectangle" ? true : false делегат через Component MyDelegate.qml
main.qml
результат |
| Автор: vlarry 12.4.2016, 09:21 | ||||
С ListView и у меня работает. В проекте я использую вид MapItemView и он не поддерживает Item.
Говорит:
Пока так и не получилось, то что хотел сделать...а надо |
| Автор: vlarry 12.4.2016, 09:48 |
| В старом модуле QtMobility был такой тип как MapGroup, где можно было создать группу из итемов, а в QtLocation 5.6 ничего подобного не нашел...как эмулировать такую группу?! Зачем убирать полезное...непонятная политика... |
| Автор: vlarry 18.4.2016, 16:41 | ||||
| Добрый день. Нашел все-таки как выводить любой объект, но теперь не знаю как обновить данные фигуры.
В консоли после
выводит пустые данные, т.е. circle создается раньше, чем считываются данные из модели. Как можно itemGreen обновить после обновления данных итема? |