QML C++
Добрый вечер.
Написал свою модель на основе QAbstractListModel как
тут
.
Все заработало но у меня элементов больше чем в примере. Соответственно не все помещаются в область ограниченную высотой height:200. При прокрутке списка оставшиеся элементы вне поля видимости не подгружаются.При увелечении height элементов становится больше.
Вопрос.
Как правильно задать параметр height?
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.Вам это нравится? Поделитесь в социальных сетях!
Комментарии
Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
Пожалуйста, авторизуйтесь или зарегистрируйтесь
l
- laei
- 23 апреля 2024 г. 19:19
C++ - Тест 004. Указатели, Массивы и Циклы
- Результат:10баллов,
- Очки рейтинга-10
Последние комментарии
Qt Linux - Урок 001. Автозапуск Qt приложения под Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Qt WinAPI - Урок 007. Работаем с ICMP Ping в Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
Анатолий Кононенко5 февраля 2024 г. 12:50
EVA25 декабря 2023 г. 21:30
Boost - статическая линковка в CMake проекте под Windows Сделал всё по-как у вас, но выдаёт ошибку [build] LINK : fatal error LNK1104: не удается открыть файл "libboost_locale-vc142-mt-gd-x64-1_74.lib" Хоть убей, не могу понять в чём дел…
Qt/C++ - Урок 056. Подключение библиотеки Boost в Qt для компиляторов MinGW и MSVC Для решения твой проблемы добавь в файл .pro строчку "LIBS += -lws2_32" она решит проблему , лично мне помогло.
Сейчас обсуждают на форуме
DA
Unlock Your Aesthetic Potential: Explore MSC in Facial Aesthetics and Cosmetology in India Embark on a transformative journey with an msc in facial aesthetics and cosmetology in india . Delve into the intricate world of beauty and rejuvenation, guided by expert faculty and …
Dr Gangil Academics20 апреля 2024 г. 17:45
Мобильное приложение на C++Qt и бэкенд к нему на Django Rest Framework Евгений, добрый день! Такой вопрос. Верно ли следующее утверждение: Любое Android-приложение, написанное на Java/Kotlin чисто теоретически (пусть и с большими трудностями) можно написать и на C+…
Павел Дорофеев14 апреля 2024 г. 12:35
Вернуть старое поведение QComboBox, не менять индекс при resetModel Добрый день! У нас много проектов в которых используется QComboBox, в версии 5.5.1, когда модель испускает сигнал resetModel, currentIndex не менялся. В версии 5.15 при resetModel происходит try…
Забыл добавить.
Все это дела поместил в заранее сформированный QWidget с помощью QQuickWidget а не QQuickView как в примере
Попробуйте сначало создать квадрат нужных размеров, а потом поместить список и задать параметр заполнить родителя.
п.с. У вас таки интерфейс на виджетах или qml?
Добрый день!
Думаю, что здесь ещё нужно поместить всё в ScrollArea, чтобы были полосы прокрутки.
Добрый вечер. Постепенно перевожу с виджета на QML
Полосу прокрутки добовляю с помощью ScrollBar.vertical: ScrollBar {} она то появляется. Вопрос то в другом.
Вот например
Элементы не попавшие в область появляются при прокрутке скрола.
У меня же количества объектов на прямую зависит от высоты ListView.
Выстовляю например height:100 подгружается 10 наименований и далее пустота. или 200 тогда 25 наименований
Как я понимаю ListView должена знать либо общее количество объектов жевущий в модели либо должен уметь при прокрутке их подгружать из модели.
сделайте отдельно область, и в эту область всуньте список.
пример из проекта, список заполняется из QSqlQueryModel, количество элемнтов может быть разное, каждый элемент списка представляется чекбоксом
список берет все что есть в моделе
Добавлю только, что может ещё понадобиться использовать clip: true в Rectangle или ListView, а то могут элементы вылезать за границы парента
благодарю, учту
Все равно не пойму. Если статически набиваю все работает
Если динамически то показывает один элемент. Хотя отладчик говорит что в модели живет 10.
Выстовляю значение mainTabLayout напримет height: 300 отображаются уже 5 элементов.
от куда берете данные?
.h
.cpp
тут собственно вызываю
получается вы парсите некий жисоновский массив и хотите вывести с него данные, что хотите получить в результате в списке? и почему у вас в делегате просто оранжевые прямоугольники, почему сразу не пытаетесь вывести нужные данные? и что у вас приходит в жисоне?поскольку такой простенький вариант выводит список без проблем
копайте в сторону вашей модели и проверьте данные которые приходят и которые находятся самой модели
"почему у вас в делегате просто оранжевые прямоугольники" упростил для показа код.
Не пойму что не так).
Проблема явно с моделью.
Отрисовывается только первый элемент модели. Который показан в отладочной информации.
а у вас модель заполняется в main.cpp? если да, попробуйте данную реализацию вынести в функцию класса создания модели, и вызывать наполнение модели в конструкторе класса.
пример (конструктор модели из предыдущего кода)
Модель наполняется не в main. Наполнение производится по сигналу из дерева категорий
Интересно что virtual QVariant data срабатывает только один раз хотя m_data>1
Ладно не буду вас отвлекать повожусь сам. Спасибо)
мне уже и самому интересно.
перенесите "setContextProperty("productListModel",&model)" в main.cpp
простенький пример можно посмотреть тут а это помогло мне когда разбирался с моделями
И так может кому будет интересно решил свою проблему следующим путем.
Через дизайнер в базовый виджет добавил QQuickWidget (назвал его listProducts)
Это соответственно убрал.
а вместо написал
и все заработало) Всем спасибо.