QML Model & C++Model
Доброго времни суток! есть модель на C++,которая берет данные из sqlite базы. в файле QML есть listview, в который должны загружаться данные, с листом очень много действий и в такой ситуации не удобно работать с С++ моделью, поскольку нужно регулярно делать апдейт модели данные в делегатах перезатираются что сильно затрудняет работу, а из самой модели данные нужны только на старте. Собственно вопрос, можно ли при старте програмы С++ модель копировать в QML модель чтоб с ней работать динамично, чтоб только в некоторых ситуациях данные записывались в базу и отобразились только при следующем старте программы.
п.с если не понятно описание задавайте вопросы
2
99
Вам это нравится? Поделитесь в социальных сетях!
Комментарии
Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
Пожалуйста, авторизуйтесь или зарегистрируйтесь
- Последние комментарии
- AK1 апреля 2025 г. 11:41Добрый день. В данный момент работаю над проектом, где необходимо выводить звук из программы в определенное аудиоустройство (колонки, наушники, виртуальный кабель и т.д). Пишу на Qt5.12.12 поско…
- VP9 марта 2025 г. 16:14Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…
- ИМ22 ноября 2024 г. 21:51Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
- Сейчас обсуждают на форуме
- f15 февраля 2025 г. 13:46Подскажите, пожалуйста! Как данный класс можно дополнить, чтобы созданные объекты можно было перемещать мышкой по сцене?
- Не запускается компьютер (точнее работает блок , но сам монитор вообще жесть)В общем я ничего с интернета не скачивала в последнее время. На компе никаких левых пр…
- Вопрос решен. Узнать QModelIndex элемента на который мы перетаскиваем другой элемент, можно с помощью функции indexAt(event->position().toPoint()) представления QTreeViev вызываемой в переопр…
- Спасибо большое за помощь и простите за то что отнял время своей невнимательностью.
Добрый день!
А можно код того, как модель C++ регистрируется в QML и как она добавлена в ListView?
main.cpp
Pagemodel.h
PageModel.cpp
QML
Я не уверен, но думаю. что можно ещё переписать метод setData в QSqlQueryModel, в котором записывать данные в базу данных и сразу делать апдейт модели после записи данных в базу данных. Тогда проблема с перезатиранием данных в делегатах будет уже менее актуальна.
Также, как вы и сказали, что данные нужны только при старте, то я бы попробовал написать обычную модель данных. в функции main, забирал бы данные из базы данных в вектор, которые бы устанавливал в ту модель. Тогда уже данные не будут так зависимы от базы данных, как было поначалу.
Ещё можно попробовать с помощью QVariantMap протолкнуть данные до QML и там уже записать в QML модель данных.
Ещё можно попробовать взять данные из базы данных прямо в QML
Тогда манипуляций в C++ делать не нужно будет.
благодарю, интересное решение