Комментарии 13
Впечатляет, но в Qt есть еще один фреймворк это QtQuick. Я стараюсь использовать QtQuick везде, где нужно сильно кастомезированное UI.
Да, в последнее время стало легко смешивать десктопные виджеты и QML-ные.
Я решал задачи для инженерных приложений, там большие объемы данных нужно отображать, так что производительность — необходимое условие.
Подскажите, содержимое QML контролов можно выводить на печать или экспортировать как изображение в файл?
Я решал задачи для инженерных приложений, там большие объемы данных нужно отображать, так что производительность — необходимое условие.
Подскажите, содержимое QML контролов можно выводить на печать или экспортировать как изображение в файл?
Теоретически да, это же обычные узлы в графе сцены, но вот добраться до них может быть не очень тривиально.
Да… похоже мульён записей обрабатывать QML будет тяжело.
Еще в QML есть одна проблема (или достоинство) JS — слабо-типизированный язык — компилятор почти не следит за корректностью типов.
Эта же проблема есть в Model/View framework — все данные идут через QVariant — полностью обезличивая их на этапе компиляции.
Еще в QML есть одна проблема (или достоинство) JS — слабо-типизированный язык — компилятор почти не следит за корректностью типов.
Эта же проблема есть в Model/View framework — все данные идут через QVariant — полностью обезличивая их на этапе компиляции.
Мне кажется мильен записей никогда не должна рисоваться. А обработать видимое по зубам qml
Да, само собой рисовать надо только видимые данные.
Обработка данных — это обычно сортировка или фильтрация, где перебираются все данные.
Гонять туда-сюда данные через QVariant и JS — это пока не для инженерных приложений, которыми я занимаюсь.
А вот оживить приложение анимациями используя стандартные Qt items widgets почти невозможно. По крайней мере я не знаю как.
Обработка данных — это обычно сортировка или фильтрация, где перебираются все данные.
Гонять туда-сюда данные через QVariant и JS — это пока не для инженерных приложений, которыми я занимаюсь.
А вот оживить приложение анимациями используя стандартные Qt items widgets почти невозможно. По крайней мере я не знаю как.
Сортировка и фильтрация — это должна модель делать, т.е. C++, а не QML (который View).
Для этих целей есть QAbstractProxyModel.
В инженерных задачах обычно QAbstractItemModel является обёрткой вокруг структур данных/объектов из предметной области.
Если прокси-модель знает об этих структурах данных, то можно обойтись без перегонки данных через QVariant.
Если производительности не хватает, то можно в прокси-модель засунуть OpenMP
В инженерных задачах обычно QAbstractItemModel является обёрткой вокруг структур данных/объектов из предметной области.
Если прокси-модель знает об этих структурах данных, то можно обойтись без перегонки данных через QVariant.
Если производительности не хватает, то можно в прокси-модель засунуть OpenMP
Да, всё верно.
Жалко только, что QAbstractProxyModel слишком «абстрактный».
Если он предназначен для пересортировки и фильтрации исходной модели, почему бы не дать опциональную возможность запоминать перестановку строк и их видимость.
А так, приходится эти маппинги из исходной модели в изменённую каждый раз реализовывать заново (ну или делать свой базовый класс).
Жалко только, что QAbstractProxyModel слишком «абстрактный».
Если он предназначен для пересортировки и фильтрации исходной модели, почему бы не дать опциональную возможность запоминать перестановку строк и их видимость.
А так, приходится эти маппинги из исходной модели в изменённую каждый раз реализовывать заново (ну или делать свой базовый класс).
Можно и даже удобно. У всех элементов унаследованных от Item (QQuickItem) есть метод bool grabToImage(callback, targetSize).
НЛО прилетело и опубликовало эту надпись здесь
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
qt-items — новый фреймворк, или попытка найти Теорию Всего