Выпущена версия Qt 6.10 с макетом Flexbox и новым полем поиска

Qt, кроссплатформенная среда разработки программного обеспечения, широко используемая для создания и развертывания графических пользовательских интерфейсов (и являющаяся основой широко распространенной среды рабочего стола KDE), только что выпустила свою последнюю версию 6.10.
Одним из наиболее заметных дополнений стала новая система Flexbox Layout для Qt Quick. Вдохновлённая гибким макетом CSS, она позволяет разработчикам создавать адаптивные интерфейсы, которые плавно подстраиваются под разные размеры экрана и соотношения сторон.
Несмотря на то, что FlexboxLayout в настоящее время находится на стадии технического тестирования, он легко интегрируется с существующими концепциями Qt Quick и предназначен для сокращения количества пользовательского кода в макетах при одновременном повышении производительности во время выполнения.
Ещё одно важное обновление — расширенная поддержка анимированной векторной графики. Qt 6.10 теперь поддерживает анимацию в форматах SVG и Lottie, что позволяет выполнять масштабируемый векторный рендеринг с аппаратным ускорением непосредственно в графе сцены Qt Quick.
Новый элемент управления SearchField также входит в состав Qt Quick Controls. Он предназначен для поиска и автоматически принимает стандартный вид на всех основных платформах, поддерживает подсказки по данным и интеграцию с моделями при минимальной настройке.
В Qt 6.10 также представлены новые инструменты, упрощающие обмен данными между C++ и QML. Новый класс QRangeModel
позволяет разработчикам напрямую подключать стандартные контейнеры C++, такие как std::vector
или std::array
, к представлениям Qt без шаблонного кода модели. В сочетании с новыми элементами delegateModelAccess
и Synchronizer
создание двусторонних привязок между серверной логикой и интерфейсами становится более интуитивным и менее подверженным ошибкам.
Для разработчиков, предпочитающих работать исключительно в QML, новый тип TreeModel позволяет объявлять иерархические данные непосредственно в QML с использованием привычного синтаксиса, похожего на JSON. Кроме того, SortFilterProxyModel предоставляет возможности декларативной сортировки и фильтрации непосредственно в QML, устраняя давний разрыв между обработкой данных в C++ и QML.
Доступность — ещё одна область, которой уделяется внимание. Приложения, созданные с помощью Qt 6.10, теперь автоматически подстраиваются под высококонтрастные системные настройки как на настольных, так и на мобильных платформах, что повышает чёткость изображения и обеспечивает согласованность с темами операционной системы. Виджеты Qt и быстрые элементы управления Qt также были доработаны для лучшей интеграции со вспомогательными технологиями, такими как программы чтения с экрана.
Что касается платформы, Qt 6.10 расширяет официальную поддержку Android 15 и 16, внедряет интеграцию WebView2 в Windows и включает macOS 26 «Tahoe» в список полностью поддерживаемых платформ. Разработчики, ориентированные на Linux, также получат преимущества от использования PipeWire в Qt Multimedia, который обеспечивает меньшую задержку, более плавное воспроизведение и улучшенную обработку контейнерных приложений.
Наконец, разработчики встраиваемых систем тоже не остались в стороне. Среда Boot to Qt теперь поддерживает Yocto 5.2 «Walnascar» и обеспечивает совместимость с несколькими новыми платами Ezurio Nitrogen. В Qt Quick 3D также появилась функция запекания карт освещения, обратные эффекты частиц и улучшена производительность для 3D-сцен, а в Qt Graphs появился новый тип заполненной поверхности и улучшена поддержка нескольких осей.
Для получения дополнительной информации см. объявление: https://www.qt.io/blog/qt-6.10-released.
Редактор: AndreyEx
Важно: Данная статья носит информационный характер. Автор не несёт ответственности за возможные сбои или ошибки, возникшие при использовании описанного программного обеспечения.