Novedades de Qt 6.7
Nuevas funciones de Qt 6.7
Qt Core Módulo
- Añadido QSpan, la reimplementación de Qt de std::span de C++20.
- Añadidas las clases Qt::strong_ordering, Qt::weak_ordering, y Qt::partial_ordering que son una implementación compatible con C++17 de las clases
std::*_ordering. - Añadidas macros de ayuda para implementar convenientemente operadores relacionales en clases Qt. Estas macros proporcionan operator<=>() en compilaciones C++20, y vuelven a los seis operadores relacionales en compilaciones C++17.
- Aplicadas estas macros de ayuda a las clases QDate, QTime, QDateTime, QTimeZone, y qfloat16.
- Añadida la nueva clase QAtomicScopedValueRollback.
- Añadido Qt::Key_micro para reemplazar eventualmente el mal llamado Key_mu: es el micro signo U+00B5, no la letra griega mu, U+03BC o U+039C.
- QLocale's name(), bcp47Name() y uiLanguages() ahora permiten a los llamadores especificar el separador a usar entre etiquetas en los nombres.
- QLocale localiza ahora (en la medida de lo posible) las zonas horarias de las fechas y horas formateadas.
- El análisis sintáctico de fecha (y fecha-hora) de años de dos dígitos permite ahora al usuario controlar el siglo dentro del cual se seleccionan esos años.
- QCalendar dispone ahora de matchCenturyToWeekday(), para soportar el análisis sintáctico de años de dos dígitos.
- QDateTime ahora acepta parámetros TransitionResolution, lo que permite controlar cómo se resuelven las transiciones de zona horaria. La resolución por defecto de un datetime en un hueco es ahora válida, pero su time() y posiblemente date() coinciden ahora con lo que informa toMSecsSinceEpoch(), en lugar de lo que se pedía.
Qt D-Bus Módulo
- Se ha eliminado la cabecera obsoleta <qdbusmacros.h>. Utilice <qtdbusglobal.h> en su lugar.
- La nueva función QDBusAbstractInterface::setInteractiveAuthorizationAllowed() permite establecer la bandera
ALLOW_INTERACTIVE_AUTHORIZATIONpara llamadas asíncronas.
Qt Graphs Módulo
Qt Gráficos3D
- La api de datos no requiere crear cada elemento de datos en la memoria heap.
- Añadida la funcionalidad renderizar a imagen.
Módulo Qt Graphs2D
- Previsualización tecnológica de gráficos 2D.
- Contiene soporte inicial para gráficos de barras, líneas y dispersión.
Qt GRPC Módulo
- Añadida la funcionalidad de usar interceptores para personalizar el comportamiento de las llamadas y flujos de QtGRPC. Ahora puedes subclasificar QGrpcClientInterceptor y sobreescribir los métodos de intercepción deseados.
- Introducidas las clases QGrpcServerStream, QGrpcClientStream y QGrpcBidirStream. Estas se usan para permitir hacer llamadas cliente, servidor y streaming bidireccional respectivamente.
Nota: El módulo Qt GRPC se encuentra en fase de Technology Preview.
Qt GUI Módulo
- Añadidas implementaciones de QIconEngine que proporcionan acceso a las librerías nativas de iconos en Windows 10 y 11, macOS e iOS, y Android.
- Añadidos nuevos tipos de eventos QEvent::ChildWindowAdded y QEvent::ChildWindowRemoved, con su correspondiente clase QChildWindowEvent para informar a las ventanas cuando se añaden y eliminan ventanas secundarias.
- Habilitada la carga de fuentes de aplicación variables en todas las plataformas (requiere DirectWrite o FreeType backend en Windows.)
- QFont Conseguidas nuevas API para trabajar con variable fonts.
- La nueva clase QFont::Tag puede usarse para especificar ejes con las nuevas APIs de soporte de fuentes variables, y con la support for typographical features que se introdujo como API preliminar en Qt 6.6 y ahora está finalizada.
Qt Multimedia Módulo
- El backend multimedia FFmpeg ahora se enlaza dinámicamente con FFmpeg en Windows. Los binarios FFmpeg precompilados se proporcionan a través del instalador en línea. Las aplicaciones de Windows que utilizan el backend FFmpeg ahora deben incluir los binarios FFmpeg como parte de su instalador utilizando windeployqt.
- Las nuevas propiedades MediaPlayer::autoPlay y Video::autoPlay pueden utilizarse para iniciar automáticamente la reproducción cuando se ha establecido una fuente multimedia.
- El QCameraDevice tiene una nueva propiedad correctionAngle. Esta propiedad representa el ángulo de rotación necesario para compensar la rotación física de la cámara respecto a su orientación nativa.
Qt Network Módulo
- Añadida la clase QHttpHeaders para representar las cabeceras HTTP.
- Añadido soporte std::chrono para establecer tiempos de espera de transferencia con QNetworkRequest y QNetworkAccessManager.
- Añadida la clase QNetworkRequestFactory (Technology Preview). La clase es una clase de conveniencia para crear peticiones de red.
- Añadidas las clases QRestAccessManager y QRestReply (Technology Preview). Las clases son envoltorios de conveniencia sintonizados para casos de uso RESTful.
Qt OPC UA Módulo
- Añadidas las nuevas clases QOpcUaHistoryEvent y QOpcUaHistoryReadEventRequest para permitir la lectura de eventos históricos.
- Añadida la nueva clase QOpcUaGenericStructHandler y las clases de datos relacionadas para soportar la decodificación y codificación de estructuras OPC UA genéricas.
Qt Protobuf Módulo
- Añadido el nuevo serializador que implementa la funcionalidad de serialización y deserialización JSON para las clases basadas en QProtobufMessage.
- Añadido soporte de campos 'opcionales' en el generador Qt Protobuf. Si el campo de mensaje está marcado como 'opcional', obtiene los métodos clear<fieldName> y has<fieldName> además del método de campo normal.
- Los campos Enum generados por el generador Qt Protobuf ahora conservan el caso de la primera letra. Anteriormente el generador ponía en mayúsculas los nombres de los campos enum generados.
Nota: El módulo Qt Protobuf está en fase de Technology Preview.
Módulo Qt Qml
- Añadidas nuevas características a QML Language Server: formateo, completado semántico y de fragmentos de código, renombrado de usos, y configuración de la generación de archivos en CMake vía QT_QML_GENERATE_QMLLS_INI.
- El contexto de traducción de un archivo QML puede establecerse mediante
pragma Translator - Ahora puede declarar QML_CONSTRUCTIBLE_VALUE y QML_STRUCTURED_VALUE en tipos de valor y construir objetos de tales tipos desde QML. De hecho ya se podía desde Qt 6.5, pero ahora está soportado oficialmente.
Qt Quick Compilador
- Los enlaces y funciones que escriben propiedades de tipos de valor ahora se pueden compilar a C++.
- El encadenamiento opcional ahora se puede compilar en C++.
- La iteración for..in ahora se puede compilar en C++.
Qt Quick Módulo
- Añadida la propiedad TextEdit.textDocument.source para cargar desde un archivo, y las funciones save() y saveAs() para escribir. Están pensadas para sustituir a XMLHttpRequest en casos de uso de manejo de texto.
- Se ha añadido la propiedad cursorSelection a TextEdit y TextArea para inspeccionar y modificar las propiedades del texto seleccionado.
- Actualizado el ejemplo del Editor de Texto para demostrar estas características.
- Añadido un nuevo renderizador de texto que dará mejores resultados para renderizar texto muy grande. Se puede seleccionar ajustando renderType a
Text.CurveRendering. - Las clases de texto tienen nuevas APIs para trabajar con variable fonts.
- El rectángulo ahora puede tener diferentes radii on each corner .
- Se ha añadido soporte preliminar para incrustar QWindows en la escena Qt Quick, junto con una propiedad padre en Window, para permitir establecer un padre visual de una Window.
- Las propiedades focusReason y focusPolicy de Control se han trasladado a Item.
- Se ha añadido QQuickRhiItem como alternativa moderna a QQuickFramebufferObject. Esto permite crear objetos QQuickItem personalizados que renderizan gráficos 3D a través de cualquier API de gráficos acelerados por hardware compatible con la interfaz de hardware de renderizado de Qt, es decir, OpenGL, Vulkan, Direct3D o Metal.
- Añadido un nuevo ejemplo de QQuickRenderControl que utiliza QRhi y por tanto es totalmente portable y funciona con todas las APIs 3D soportadas. Muestra cómo redirigir el contenido de Qt Quick a una textura de forma multiplataforma.
Qt Quick Controls Módulo
- Añadidas las siguientes funciones que toman argumentos fuertemente tipados:
- pushItem()
- pushItems()
- popToItem()
- popToIndex()
- popCurrentItem()
- replaceCurrentItem()
- A diferencia de las funciones push, pop y replace, éstas pueden ser compiladas a C++ por el compilador QML.
Qt Quick Módulo Shapes
- El Renderizador de curvas y la propiedad asociada preferredRendererType están ahora soportados oficialmente y ya no se consideran experimentales.
- Se ha añadido la propiedad pathHints para caracterizar las formas. El renderizador puede utilizarla para optimizar el procesamiento y el renderizado de las trayectorias.
- Las formas tienen ahora un tamaño implícito basado en el rectángulo delimitador de la forma, y se posicionarán adecuadamente en los trazados. Se han añadido las propiedades fillMode, horizontalAlignment y verticalAlignment para modificar el comportamiento de la forma cuando el elemento tiene un tamaño explícito distinto del implícito.
- Se ha añadido la herramienta svgtoqml como avance tecnológico. Se trata de una herramienta que puede utilizarse para convertir un archivo SVG en código QML. Actualmente se considera experimental y es compatible con un subconjunto de lo que admite Qt SVG.
Qt Quick Timeline Módulo
- El sub-módulo QtQuick.Timeline.BlendTrees añade nuevas APIs para permitir la mezcla de múltiples animaciones en la línea de tiempo.
Qt Quick Módulo 3D
- QQuick3DRenderExtension es una nueva clase para implementar extensiones de renderizado del lado de la aplicación, lo que significa que ahora los usuarios pueden extender el canal de renderizado de QtQuick3D sin hacer modificaciones al motor de QtQuick3D. Junto con la nueva API semipública proporcionada por QtQuick3D, y la Interfaz de Hardware de Renderizado de Qt (QRhi), ahora se puede insertar código de renderizado personalizado en el canal de renderizado de QtQuick3D, ya sea para ser renderizado como parte del pase de renderizado principal, o como una grabación de renderizado independiente. Los resultados de las grabaciones de renderización independientes pueden ponerse a disposición de las extensiones precedentes, que pueden controlarse mediante el orden en que se declara extensions. Las extensiones de renderización independientes también pueden utilizarse como proveedores de textura para elementos de textura, lo que significa que sus resultados pueden utilizarse con otros tipos de QtQuick3D que consuman el tipo de textura de QtQuick3D, como materiales, efectos, etc.
- La familia de clases QSSG está documentada y se ofrece como API con promesas de compatibilidad limitadas. Las clases Qt Spatial Scene Graph proporcionan acceso y ayudas útiles para interactuar con los tipos internos de QtQuick3D. Las clases QSSG pueden dividirse en dos grupos principales. El primer grupo proporciona acceso al estado necesario para hacer renderizado personalizado en la escena QtQuick3D con QRhi, mientras que el segundo grupo de clases proporciona acceso a los renderizables de QtQuick3D, y helpers que hacen posible modificar, tomar, o re-renderizar esos renderizables usando la misma infraestructura usada por QtQuick3D internamente.
- QSSGRenderExtension - Implementación de backend para extensiones de renderizado.
- QSSGRenderContextInterface - Clase agregada de los subsistemas utilizados internamente por QtQuick3D.
- QSSGRhiContext, QSSGRhiGraphicsPipelineState, QSSGRhiSamplerDescription - QRhi clase de conveniencia utilizada por QtQuick3D.
- QSSGFrameData - Datos por fotograma utilizados por las extensiones de renderizado.
- QSSGRenderHelpers, QSSGModelHelpers, QSSGCameraHelpers, y QSSGRenderExtensionHelpers - Clases de ayuda para acceder, configurar y renderizar QtQuick3D renderizables.
- CustomMaterial tiene nuevas propiedades sourceAlphaBlend y destinationAlphaBlend.
- Texture tiene nuevas propiedades textureProvider y tilingModeDepth.
- View3D nuevas propiedades explicitTextureWidth, explicitTextureHeight, y effectiveTextureSize.
Qt Quick Módulo de Física 3D
- HeightFieldShape: Soporta el uso del tipo de imagen QML como fuente a través de la propiedad image.
- ConvexMeshShape: Soporta el uso de QQuick3DGeometry como fuente a través de la propiedad geometry.
- TriangleMeshShape: Soporta el uso de QQuick3DGeometry como fuente a través de la propiedad geometry.
- PhysicsWorld:
- Añade las propiedades reportKinematicKinematicCollisions y reportStaticKinematicCollisions que habilitarán los informes de colisión cinemática-kinemática y estática-kinemática respectivamente.
- Soporta el ajuste del número de hilos de simulación.
- PhysicsNode: Añadir soporte para el filtrado de colisiones. Ahora es posible especificar IDs de grupos para nodos e ignorar colisiones entre ellos.
- PhysicsBody: Añadir soporte para deshabilitar la simulación de un cuerpo a través de la propiedad simulationEnabled.
Qt Serial Bus Módulo
- Añadido un método a QCanDbcFileParser, que permite parsear ficheros DBC con una codificación distinta de UTF-8.
Módulo Qt SQL
- Se ha eliminado la cabecera obsoleta <qsql.h>. Utilice <qtsqlglobal.h> en su lugar.
Qt WebEngine Módulo
- Añadidas nuevas APIs QWebEngineWebAuthUXRequest y QML tipo WebEngineWebAuthUXRequest para soportar verificación de usuario FIDO2 y credencial residente.
- Añadida nueva api QWebEngineDesktopMediaRequest para permitir la selección de fuente para la captura de pantalla de escritorio.
- Se ha añadido WebEngineDriver para automatizar las pruebas de sitios web en distintos navegadores. WebEngineDriver se basa en ChromeDriver.
- Se ha añadido QWebEngineUrlRequestInfo::requestBody para acceder al cuerpo de una solicitud mediante la API QIODevice.
- Añadidas las configuraciones forceDarkMode (QML) y ForceDarkMode (C++) para permitir la renderización automática de todos los contenidos web utilizando un tema oscuro.
- Añadidas las señales QWebEngineProfile::clearHttpCacheCompleted y QQuickWebEngineProfile::clearHttpCacheCompleted.
Qt Widgets Módulo
- Añadida una clase QRhiWidget (en fase de previsualización tecnológica) para renderizar gráficos 3D a través de cualquier API de gráficos acelerados por hardware soportada por la interfaz de hardware de renderizado de Qt, es decir, OpenGL, Vulkan, Direct3D o Metal.
- QCheckBox tenemos una nueva señal checkStateChanged que emite el nuevo estado de comprobación como un valor enum de tipo seguro Qt::CheckState.
- QDateTimeEdit tiene una nueva propiedad timeZone
- En los sistemas que ejecutan Windows 11 y superiores se utiliza por defecto el nuevo estilo de widget de Windows 11. Este estilo soporta el modo oscuro de Windows.
Qt SVG Módulo
- Añadido soporte para algunos elementos del estándar SVG 1.1. Los elementos son Mask, Symbol, Marker, Pattern, Filter y Filter Primitives (feMerge, feColorMatrix, feGaussianBlur, feOffset, feComposite, feFlood).
- Se ha añadido la bandera QtSvg::Options para activar o desactivar el renderizado de los nuevos elementos.
- Añadidos setters y getters para QtSvg::Options para QSvgRenderer y QSvgWidget. Los nuevos elementos están activados por defecto.
Herramientas
Qt Widgets Diseñador
- Qt Widgets Designer escribe ahora valores de enumeración totalmente cualificados en los archivos
.uipara soportar enumeraciones de ámbito y Qt for Python. El soporte para la lectura de estos valores se ha retroportado a las versiones 6.6.1 y 6.5.4.
Cambios en las plataformas
Plataformas de escritorio
Windows
- Se ha añadido el estilo Windows 11
- Se ha añadido QNativeInterface::QWindowsScreen que proporciona acceso al controlador subyacente de QScreen en Windows.
macOS
- macOS 14 es ahora una plataforma soportada.
Cliente Wayland en Linux
- Se ha añadido QNativeInterface::QWaylandScreen que proporciona acceso al objeto wayland subyacente de QScreen.
WebAssembly
- Añadido soporte drop (arrastrar y soltar). Qt ahora enviará eventos drop cuando el usuario suelte contenido en las ventanas de la aplicación.
- OpenGL ES 3 / WebGL2 es ahora por defecto, con fallback a OpenGL ES2 / WebGL 1.
- Versión de Emscripten actualizada a 3.1.50
Plataformas móviles
Android
- Re-factorizado el código Java del plugin Android que, consiste en:
- Simplificar la arquitectura y la relación entre las distintas clases (por ejemplo, entre QtActivity, QtActivityLoader, y QtActivityDelegate).
- Alejando las clases QtLoader del paquete public bindings.
- Eliminado el uso de reflection.
- Añadido soporte preliminar para ventanas child para Android para ser consistente con Qt y sus otros QPAs. Como resultado de esto, QScreen::grabWindow() no está soportado temporalmente por ahora.
- Establecido Android 14 como la máxima versión de plataforma soportada, y el SDK de plataforma por defecto y los niveles de destino a la API 34.
- Establece la versión NDK de Android compatible en r26b (26.1.10909125) y JDK en 17.
- Alineación de los ejemplos de la categoría Móvil con iOS.
- Añadido QNativeInterface::QAndroidScreen que proporciona acceso al identificador de pantalla de Android de un QScreen.
- Añadido soporte para usar ndk-stack con androidtestrunner para imprimir de forma bonita los informes de fallos de las pruebas.
- Añadido CMake variable QT_ANDROID_DEPLOYMENT_TYPE para establecer explícitamente el tipo de despliegue para el paquete de Android.
- Reescritura y actualización general de la documentación de Qt para la plataforma Android.
- Características introducidas para usar los poderes de Qt en proyectos Android:
- Qt Quick View Android Class para usar Qt Quick en código Java o Kotlin (technology preview).
- Herramientas Qt para Android Studio para Android Studio (avance tecnológico).
iOS
- iOS 17 es ahora una plataforma soportada.
Plataformas integradas
Boot to Qt
- Se ha añadido soporte para Yocto 4.3 (Nanbield).
- Se agregó soporte para hosts de desarrollo ARM Linux.
- Se ha incluido compatibilidad con Squish en las imágenes de destino.
- Se actualizaron los niveles de soporte para hardware de destino con nuevas placas soportadas para el nivel 3:
- Amazon AWS EC2 ARM64
- Kit de desarrollo NVIDIA Jetson AGX Orin
- NXP i.MX8M Nano LPDDR4 EVK (sustituye a la variante DDR4 EVK)
- Kit de desarrollo Qualcomm Robotics RB5
- TI SK-AM69
VxWorks
- Se ha añadido compatibilidad con VxWorks 23.09 como Technology Preview.
Cambios en el sistema de compilación
- Las cabeceras de Qt C++ ahora incluyen metadatos para la herramienta IWYU.
- CMake: Ahora puedes ajustar los argumentos para las herramientas *deployqt en qt_generate_deploy_app_script(), qt_deploy_runtime_dependencies() estableciendo las DEPLOY_TOOL_OPTIONS.
- CMake: qt_add_library() ahora considera el valor de la variable BUILD_SHARED_LIBS. Si la variable está definida, tiene mayor prioridad que la lógica de detección del tipo de biblioteca en qt_add_library() cuando se añaden los objetivos de la biblioteca.
- CMake: qt_standard_project_setup() permite ahora establecer el idioma nativo de la interfaz de usuario de la aplicación, así como los idiomas a los que se traduce la interfaz de usuario. Esto es recogido por las llamadas qt_add_translations() para generar archivos .ts y .qm que coincidan con los idiomas dados, generando un archivo .ts 'sólo en plural' para el idioma nativo.
- CMake: Ahora se pueden pasar múltiples destinos a qt_add_translations() para extraer las traducciones. Alternativamente, puede dejar que qt_add_translations() recoja todos los objetivos de un proyecto (a través de la nueva función qt_collect_translation_source_targets()), con la opción de excluir objetivos no deseados a nivel de directorio o de objetivo.
- CMake: qt_add_translations() ha salido de la vista previa de tecnología.
WebOS
- Qt 6.7 ha sido verificado para trabajar con LG webOS OSE 2.25.0(Qt para webOS).
Lista de cambios en la API
Estas páginas contienen una visión general de los cambios de la API en Qt 6.7:
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.