Novedades de Qt 6.11
Nuevos módulos en Qt 6.11
Qt 6.11 añade los siguientes módulos:
- Qt Canvas Painter - Una solución de pintura 2D acelerada para Qt Quick y QRhi-based render targets.
- Qt OpenAPI - Una extensión del generador Open API que genera clientes Qt HTTP, típicamente utilizados para APIs RESTful.
- Qt TaskTree - Proporciona una forma declarativa de componer y ejecutar flujos de trabajo de tareas asíncronas.
- Qt Labs StyleKit - Una API de estilo dedicada que agiliza el estilo Qt Quick Controls a través de un conjunto de atributos de diseño compartidos.
Los nuevos módulos están en Technology Preview, lo que excluye su API de las promesas de compatibilidad de Qt. No obstante, agradeceremos cualquier comentario que nos permita mejorarlos. Ya sea a través del Qt Support Center, el Qt Bug Tracker, el Qt Forum, o los comentarios de las entradas de blog enlazadas.
Módulo Qt Canvas Painter
Qt Canvas Pain ter es una solución de pintura 2D acelerada para Qt Quick y QRhi-based render targets. Ver también la serie de blogs Qt Canvas Painter para una visión general.
Módulo Qt OpenAPI
Qt OpenAPI extiende un generador Open API para generar clientes HTTP Qt, típicamente utilizados para APIs RESTful.
Módulo Qt TaskTree
Qt TaskTree proporciona una forma declarativa de componer y ejecutar flujos de trabajo de tareas asíncronas en C++. Consulte la serie de entradas del blog Introducción para obtener una visión general.
Módulo Qt Labs StyleKit
Qt Labs StyleKit es una API de estilo dedicada que agiliza el estilo Qt Quick Controls a través de un conjunto de atributos de diseño compartidos.
Nuevas características de Qt 6.11
Módulo ActiveQt
No hay cambios dignos de mención.
Qt Bluetooth Módulo
No hay cambios dignos de mención.
Qt CoAP Módulo
- QCoapClient::bindInterface permite vincular la comunicación a una interfaz de red específica.
Qt Core Módulo
- QDate es ahora débilmente incrementable, es decir, implementa operadores de incremento (y decremento) pre y postfix, y puede utilizarse en un C++20
std::views::iota. - QJniObject Las APIs se pueden llamar ahora con
std::expected(o un tipo equivalente) como tipo de retorno, en cuyo caso las excepciones Java no son consumidas por el framework y en su lugar se devuelven a quien las llama como resultado inesperado. - QRangeModel::ItemAccess proporciona un punto de personalización para acceder a los datos de rol de un tipo de elemento multirol.
- QRangeModel ahora se puede utilizar con rangos C++ que no proporcionan una implementación constante
std::begin/end, como C++20std::views::filter. - Con rangos que utilizan la misma subclase QObject para ítems multi-rol, el nuevo QRangeModel::autoConnectPolicy puede establecerse como Full u OnRead para conectar las señales de cambio de todas las propiedades expuestas de los ítems QObject a la correspondiente emisión de señales dataChanged().
- QRangeModelAdapter proporciona una API de contenedor C++ típica al rango sobre el que opera QRangeModel, garantizando que las señales QAbstractItemModel relevantes se emitan en los cambios, sin que el código de usuario tenga que trabajar con QModelIndex. Esta nueva clase está en fase de previsualización tecnológica.
- En Windows, Qt genera ahora automáticamente un manifiesto de aplicación para los ejecutables creados con CMake. El manifiesto deriva la versión de la aplicación de
PROJECT_VERSION, admite la personalización del identificador del proyecto y el nivel de ejecución mediante variables CMake, declara la compatibilidad con Windows 10 y Windows 11, y habilitalongPathAware.
Qt Concurrent Módulo
No hay cambios dignos de mención.
Qt D-Bus Módulo
No hay cambios dignos de mención.
Qt Graphs Módulo
- Se ha añadido la nueva clase QCustomSeries para permitir a los usuarios crear sus propios tipos de gráficos 2D, como gráficos de velas o gráficos de caja.
- Se ha añadido soporte multieje a los gráficos 3D en forma de propiedades rowAxis, valueAxis, y columnAxis en QBar3DSeries, y axisX, axisY, y axisZ en QScatter3DSeries y QSurface3DSeries
- Añadidas las propiedades subSlicesCount, subSlicesSum, subSlicesRatio, y sliceChildren en QPieSlice para permitir la creación de subcortes en gráficos de tarta y rosquilla.
- Añadidas las propiedades visualMin y visualMax en QDateTimeAxis y QValueAxis para mantener los rangos de los ejes visibles
- Se han añadido las propiedades gradient y selectedGradient en QAreaSeries para permitir el uso de gradientes en gráficos de área.
- Añadida propiedad labelPosition en QBarCategoryAxis para permitir ajustar la ubicación de las etiquetas en los gráficos de barras.
- Añadida propiedad timeZone en QDateTimeAxis para permitir establecer su propia zona horaria para el eje.
- Añadidas las propiedades pan y zoom en QDateTimeAxis para permitir la panorámica y el zoom de la misma forma que en QValueAxis
- Añadidas las propiedades color y subColor en QAbstractAxis para permitir cambiar los colores de los ejes.
- Se han añadido las propiedades joinStyle, lineStyle, strokeStyle, dashOffset, y dashPattern en QLineSeries para permitir una mayor estilización en los gráficos de líneas
- Se ha añadido la propiedad optimized en QSplineSeries para permitir el uso de la interpolación Catmull-Rom en lugar del método por defecto, más preciso y de mayor rendimiento.
- Se han añadido las propiedades customRowLabels y customColumnLabels en QBar3DSeries para permitir anular las etiquetas de filas y columnas.
- Se ha añadido la propiedad rotationAbsolute en QCustom3DItem para solucionar problemas en la rotación de elementos personalizados.
- Añadida propiedad rowsSanitized en QSurface3DSeries para eliminar automáticamente filas con datos no válidos
- Añadida la propiedad cutoffMargin en GraphsItem3D y Q3DGraphsWidgetItem para ajustar la sensibilidad de la selección de elementos cerca de los márgenes del gráfico.
- Añadido soporte para múltiples QBarSeries en un GraphsView.
- Añadido soporte para valores negativos en QBarSeries.
- Añadido soporte para valores no válidos en LineSeries, lo que resulta en huecos visuales.
Qt GRPC Módulo
- Añadido el nuevo mecanismo Client Interception a QtGrpc para permitir la intercepción y modificación de las peticiones salientes y las respuestas entrantes.
- Qt 6.11 añade operadores de comparación (
operator==yoperator!=) para QGrpcCallOptions y QGrpcChannelOptions, permitiendo comprobaciones directas de igualdad entre objetos de opción. - QGrpcOperation la clase introduce una señal serverInitialMetadataReceived() que notifica a los manejadores RPC tan pronto como se reciben los metadatos iniciales del servidor.
- QGrpcChannelOptions class proporciona ahora los métodos filterServerMetadata() y setFilterServerMetadata() para controlar si los metadatos relacionados con el protocolo se incluyen en las respuestas del servidor.
- El espacio de nombres QtGrpc introduce el enum RpcType y el struct RpcDescriptor para describir los métodos gRPC con su nombre de servicio, nombre de método y patrón de comunicación.
Qt GUI Módulo
- El marco de ventanas acoplables emite eventos de accesibilidad del nuevo tipo QAccessible::RoleChange cuando los widgets acoplados cambian entre acoplados y flotantes.
- El nuevo rol de accesibilidad Switch es utilizado por el tipo Switch en Qt Quick Controls.
- El nuevo atributo de accesibilidad Orientation es utilizado por los controles deslizantes y similares para informar de su orientación a los clientes de accesibilidad.
- QRawFont obtuvo una API para obtener el glyphCount() y para buscar el glyphName() para un índice de glifo de la fuente.
- QTextCharFormat se han creado nuevas API para definir font features y variable axes.
Qt Help Módulo
No hay cambios dignos de mención.
Módulo Qt HttpServer
- Añadido soporte para clientes HTTP/1.0.
- Qt 6.11 introduce límites configurables de tamaño de petición a QHttpServerConfiguration, permitiendo a las aplicaciones protegerse contra peticiones sobredimensionadas. Los nuevos métodos incluyen setMaximumUrlSize(), setMaximumTotalHeaderSize(), setMaximumHeaderFieldSize(), setMaximumHeaderFieldCount(), y setMaximumBodySize(). Cuando se superan los límites, el servidor responde con los códigos de error HTTP apropiados (414, 431 o 413).
- Los gestores de rutas ahora pueden devolver
QFuture<void>y responder utilizando un argumento QHttpServerResponder&& en otro subproceso, lo que permite descargar del subproceso principal del servidor el procesamiento de solicitudes que requiere mucha CPU. En el caso de las conexiones HTTP/2, se pueden procesar varias solicitudes al mismo tiempo, mientras que las conexiones HTTP/1.x procesan las solicitudes de forma secuencial pero siguen beneficiándose del procesamiento en segundo plano. La E/S del socket siempre permanece en el hilo QHttpServer. - isResponseCanceledSe ha añadido () a QHttpServerResponder, lo que permite a los gestores detectar cuándo un cliente se ha desconectado y salir antes para evitar procesamientos innecesarios.
Qt Image Formats Módulo
Se actualizaron algunos módulos de terceros incluidos, ver Cambios en la licencia.
Qt Lottie Animation
- Se añadió soporte para reglas de relleno de rutas.
- Añadido el comando de CMAKE qt_target_qml_from_lottie para convertir de Lottie a QML en tiempo de compilación.
- lottietoqml y VectorImage backend ya no son tech preview.
- VectorImage: Añadido soporte para animar formas a lo largo de rutas.
- VectorImage: Añadido soporte para animaciones morphing (interpolación entre dos formas.)
- VectorImage: Añadido soporte para capas mate.
Qt MQTT Módulo
Ningún cambio digno de mención.
Qt Multimedia Módulo
- Añadidas sobrecargas basadas en callbacks para los métodos de inicio de QAudioSource y QAudioSink para permitir el procesamiento de audio en tiempo real.
Qt Network Módulo
- QNetworkRequest puede ahora especificar los parámetros TCP Keep Alive para la petición actual. Además, se han cambiado los parámetros por defecto de TCP Keep Alive en QNetworkAccessManager y ahora las conexiones inactivas se terminan tras dos minutos de inactividad.
Qt Network Authorization Módulo
Ningún cambio digno de mención.
Qt NFC Módulo
No hay cambios dignos de mención.
Qt OPC UA Módulo
- El paquete Open62541 ha sido actualizado a v1.4.13. Véase también Cambios en la licencia.
Qt OpenGL Módulo
No hay cambios dignos de mención.
Qt Positioning Módulo
- Las aplicacionesQt para WebAssembly ahora pueden usar la GeoLocation API del navegador como backend.
Módulo Qt PrintSupport
- Mejoras de accesibilidad en los diálogos de impresión: Se han establecido amigos de etiquetas y un orden de enfoque adecuado para mejorar la compatibilidad con lectores de pantalla y la navegación mediante teclado.
Qt Protobuf Módulo
- La función qprotobufmessage_cast() proporciona un downcasting seguro de los punteros QProtobufMessage. Similar a qobject_cast() o
dynamic_cast(), permite una comprobación y conversión de tipos en tiempo de ejecución fácil y segura.
Qt Qml Módulo
- Añadido soporte para espacios de trabajo en QML Language Server.
- Añadido soporte para definiciones go to C++ en QML Language Server.
- Añadido soporte para silenciar advertencias de propiedades de contexto a través de un archivo de configuración
.contextProperties.inipara qmllint. - Se han introducido las palabras clave
overrideyvirtualque, junto con la palabra clave existentefinaly el soporte de herramientas, ayudan a evitar el ensombrecimiento accidental de propiedades y permiten la anulación explícita de propiedades en QML. Consulte Property Shadowing y Override Semantics para obtener más información. - Se ha dado un nombre al tipo de valor easingCurve y se ha transformado el espacio de nombres Easing en un singleton.
- Añadidas APIs a QQmlContext para obtener el list of child contexts y a find an object by id.
- Añadida la opción GroupAttributesTogether a qmlformat. Esto implica la opción NormalizeOrder y reordena las categorías QML sin ordenar los atributos (definiciones de propiedades, enlaces de propiedades, métodos, señales y enums).
- Se ha añadido la opción SingleLineEmptyObjects a qmlformat. Esto evita que los objetos vacíos se expandan en una segunda línea.
Qt Quick Módulo
- Añadido el comando de CMAKE qt_target_qml_from_svg para convertir de SVG a QML en tiempo de compilación.
- Añadidas APIs a Flickable para position o flick la vista a un hijo y a flick to a position.
Qt Quick Controls Módulo
- Añadido DoubleSpinBox, que es similar a SpinBox pero soporta valores de punto flotante.
- Se han añadido defaultButton y defaultStandardButton a DialogButtonBox. Cuando se activan, el botón correspondiente se resalta y recibe activeFocus siempre que DialogButtonBox recibe el foco.
Qt Quick Dialogs Módulo
Ningún cambio digno de mención.
Qt Quick Módulo Efectos
- Qt 6.11 añade cuatro nuevas propiedades a RectangularShadow para el control independiente del radio de las esquinas: topLeftRadius, topRightRadius, bottomLeftRadius, y bottomRightRadius. Cada propiedad vuelve a la propiedad existente radius si no se establece, o crea una esquina afilada cuando se establece en cero, lo que permite formas de sombra más flexibles con diferentes radios de esquina por esquina.
Qt Quick Módulo de diseño
Sin cambios dignos de mención.
Qt Quick Particles Módulo
No hay cambios dignos de mención.
Qt Quick Timeline Módulo
No hay cambios dignos de mención.
Qt Quick Módulo de pruebas
No hay cambios dignos de mención.
Qt Quick Módulo Widgets
No hay cambios dignos de mención.
Qt Quick Módulo 3D
- Añadida la API QML para pases de render definidos por el usuario, permitiendo renderizados personalizados directamente en QML sin conocimientos de C++.
- Añadida la propiedad ssrEnabled en ExtendedSceneEnvironment para permitir reflexiones en el espacio de la pantalla (SSR).
- Se ha añadido el efecto de iluminación global en el espacio de la pantalla (SSGI) a ExtendedSceneEnvironment, que proporciona oclusión ambiental e iluminación indirecta en tiempo real.
- Se ha añadido la generación de vectores de movimiento por objeto para los efectos AA temporal y desenfoque de movimiento.
- Se ha añadido soporte de capas para permitir la agrupación de nodos y controlar qué capas renderiza la cámara.
- Se ha añadido un método de renderizado de transparencia independiente del orden (OIT) de listas enlazadas.
- Se ha añadido compatibilidad con
NORMAL_ROUGHNESS_TEXTUREen efectos de postprocesado y materiales personalizados. - Se ha añadido el muestreo de ruido azul a las sombras suaves PCF para mejorar la calidad con patrones de ruido menos visibles.
- Se ha añadido una gestión adecuada del alfa premultiplicado para el contenido de Qt Quick en las texturas.
- Añadidas las exposiciones
VIEW_MATRIXyPROJECTION_MATRIXa los efectos de postprocesado. - Añadido el método pickInRect() en View3D para la selección de objetos basada en rectángulos.
- Añadido el método closestPointPick() en View3D para encontrar el punto más cercano de una superficie a un punto dado
- Añadida la sobrecarga rayPick() que acepta un parámetro de modelo específico
- Añadida forma de escena para emisores de partículas que calcula dinámicamente formas basadas en la geometría de la escena
- Se ha añadido la API QQuick3DTextureProviderExtension para simplificar la creación de proveedores de texturas personalizados.
- Añadida la función scheduleRenderResults() en QSSGFrameData para solicitar resultados de renderización específicos.
- Actualizado Assimp a v6.0.2
Qt Quick Módulo 3D XR
- Añadido soporte para OpenGL desktop Linux (plataformas Monado, Xlib, Wayland)
- Ampliación de processTouch() para enviar eventos táctiles a cualquier elemento seleccionable Model, y no sólo a eventos táctiles. XrItem
- Mejorado touchpointState() para devolver la posición de la superficie y la información del vector normal para interacciones táctiles 3D.
- Añadido soporte Popup y Menu en XrItem a través de QQuickOverlay dedicado
- Actualizado OpenXR a v1.1.49
Qt Quick Módulo de Física 3D
Sin cambios dignos de mención.
Qt Quick Módulo VectorImage
- Añadido soporte para máscaras SVG.
- Añadido soporte para filtros de post-procesado SVG para igualar el soporte en Qt SVGfeGaussianBlur, feColorMatrix, feOffset, feFlood, feBlend, feComposite y feMerge.
- Añadido soporte para animar formas a lo largo de trazados.
- Añadido soporte para la etiqueta SVG <symbol>.
Qt Serial Port Módulo
No hay cambios dignos de mención.
Qt Serial Bus Módulo
No hay cambios dignos de mención.
Módulo Qt SQL
No hay cambios dignos de mención.
Qt SVG Módulo
- Se ha añadido soporte para la animación de rutas de movimiento CSS a través de
offset-pathyoffset-distance. Tenga en cuenta queoffset-pathsólo admite la función de ruta para definir una ruta. - Se ha añadido soporte para la función de temporización de animación CSS en una animación en su conjunto. Actualmente, sólo se admiten las palabras clave predefinidas (
linear,step-start,ease, etc.).
Qt Test Módulo
- Añadida la función QTest::currentGlobalDataTag() para recuperar el nombre de los datos de prueba globales actuales.
- Añadido QTest::defaultTryTimeout para permitir configurar el tiempo de espera por defecto utilizado por las funciones QTRY_*.
- QCOMPARE ahora imprime el signo para ceros negativos y valores NaN, e imprime cargas útiles NaN.
- QTEST_THROW_ON_FAIL y QTEST_THROW_ON_SKIP ahora funcionan cuando el QCOMPARE/QSKIP es invocado desde dentro de QtConcurrent.
- QTest::failOnWarning() ahora falla en cualquier tipo de mensaje >= warning, incluidos los mensajes críticos.
- En macOS, la suspensión de la pantalla y la siesta de la aplicación se desactivan ahora incondicionalmente durante toda la ejecución de la prueba.
- Se ha actualizado el soporte de Callgrind a Valgrind v3.25.1, añadiendo soporte para RISCV 64-bit Linux.
Módulo Qt VirtualKeyboard
- Qt 6.11 introduce la propiedad arrowKeyNavigationEnabled en VirtualKeyboardSettings, permitiendo a los desarrolladores controlar si las teclas de flecha (Izquierda, Derecha, Arriba, Abajo) y el Retorno pueden usarse para navegar entre las teclas del teclado cuando el panel de entrada está visible. El valor predeterminado de la propiedad se basa en el indicador de configuración en tiempo de compilación
QT_VIRTUALKEYBOARD_ARROW_KEY_NAVIGATION. - Se ha añadido la propiedad keyboardDesignMaximumHeight al tipo KeyboardStyle. Utilícela para evitar que el teclado se superponga a la mayor parte de la pantalla.
Qt WebEngine Módulo
- Qt WebEngine se basa ahora en Chromium 140.
- Chromium ha añadido nuevos componentes Rust que pretenden reemplazar a sus homólogos C++. Qt WebEngine ahora puede ser opcionalmente construido usando estos componentes Rust. Esto requiere la instalación de una cadena de herramientas Rust y la configuración con
-feature-webengine-rust-build. El comportamiento por defecto es construir con los antiguos componentes C++. - Se ha añadido la política OnlyPersistentCookies para evitar que las cookies de sesión se guarden en disco.
- Añadida la configuración de TrimAccessibilityIdentifiers para forzar que los atributos 'id' de HTML se utilicen como IDs de automatización para la accesibilidad.
- Se ha añadido compatibilidad con el atributo global HTML
inputmode. - Se ha mejorado la gestión de la API
fetch()de las redirecciones a recursos de origen cruzado. - Se ha eliminado el código de la API del complemento Pepper.
- Habilitada la página de depuración
chrome://usb-internals.
Qt WebView Módulo
- Añadidos enlaces C++ para WebView, lo que permite utilizar el módulo en aplicaciones basadas en Qt Widgets. Las nuevas API de C++ se publican en estado de Technology Preview y pueden sufrir modificaciones en el futuro.
Qt Widgets Módulo
- QWizard obtuvo una nueva opción StretchBanner para estirar el banner a todo lo ancho del asistente.
- QAbstractItemView Nueva propiedad keyboardSearchFlags que permite ajustar la forma en que la implementación por defecto de keyboardSearch() compara la cadena dada con los datos del modelo.
- QColumnView Nueva propiedad previewColumnVisible que especifica si la columna de vista previa es visible.
- La nueva clase QStyleOptionMenuItemV2 añade una bandera que indica si el ratón está pulsado sobre el elemento que está siendo renderizado por el estilo.
- QTabBar ahora emite tabCloseRequested cuando se pulsa en el medio de una pestaña si tabsClosable es true.
Qt XML Módulo
Ningún cambio digno de mención.
Herramientas
Generador de documentación QDoc
- Añadido soporte completo para tipos QML singleton, incluyendo un nuevo comando
\qmlsingletontype, detección automática de la macroQML_SINGLETON, y reconocimiento depragma singletonen archivos QML. - QDoc es ahora totalmente compatible con los alias de módulos QML (sintaxis
import ... as ...), incluido el enlace, el resaltado de sintaxis para identificadores cualificados y el marcado correcto para anotaciones de propiedades comoanchors.filly propiedades adjuntas comoComponent.onCompleted. - Puede utilizar el nuevo comando
\toc/\endtocy\tocentrypara especificar estructuras jerárquicas de tablas de contenido en archivos fuente de documentación. QDoc genera archivos<project>_toc.xmlpara las barras laterales de navegación. - El comando \overload tiene ahora un argumento opcional. Utilice la sintaxis
\overload primarypara designar la función principal en un conjunto de sobrecarga. - QDoc genera ahora ejemplos de conexión contextual para señales y ranuras sobrecargadas.
- La variable de configuración
includeprivatepermite documentar miembros privados de C++. Las funciones virtuales puras ahora se documentan incondicionalmente. - Conceptos de C++20: QDoc ahora extrae y muestra las cláusulas C++20 requires para las plantillas de funciones y clases. Se admiten las posiciones de restricción final y de encabezado de plantilla.
- El comando \code acepta ahora un argumento opcional para especificar el lenguaje de programación del bloque de código. Utilice "text" para desactivar el resaltado de sintaxis.
- El argumento
\meta keywordsañade palabras clave personalizadas como elementos HTML<meta>para la optimización de motores de búsqueda y el posprocesamiento. - Ahora se admite la vinculación explícita a propiedades adjuntas de QML mediante el criterio de vinculación "attached", lo que permite la desambiguación cuando los nombres de propiedades normales y adjuntas entran en conflicto.
- Las declaraciones de plantillas con más de dos parámetros se muestran ahora en un formato multilínea para mejorar la legibilidad. La salida HTML utiliza la clase CSS
template-blockpara estilos personalizados. - QDoc ahora advierte sobre propiedades C++ no documentadas declaradas con
Q_PROPERTY, asegurando una cobertura de documentación consistente en todos los elementos de la API. - QDoc advierte ahora sobre autoenlaces en los comandos
\saen los que un documento se enlaza a sí mismo. - La variable de configuración
logwarningshace que QDoc escriba todas las advertencias en un archivo<project>-qdoc-warnings.log. La nueva sub-opciónlogwarnings.disablecliargsomite los argumentos CLI de la cabecera del log para logs portables. - Las advertencias de QDoc ahora incluyen el prefijo del nombre del proyecto para construcciones multimódulo.
- Mejoras en la configuración:
codelanguages: Especifica lenguajes de programación adicionales aceptados en bloques \code, permitiendo que la documentación incluya código en lenguajes sin marcadores de resaltado de sintaxis incorporados.imagesoutputdir: Subdirectorio de salida personalizado para imágenes para resolver conflictos de nombres de archivo en compilaciones multimódulo.internalfilepatterns: Marca automáticamente las clases como internas basándose en patrones de nombre de archivo/ruta, como*_p.h.projectroot: Establece el directorio raíz para convertir rutas absolutas en relativas en los registros de advertencia, mejorando la portabilidad entre entornos de compilación. También disponible como variable de entornoQDOC_PROJECT_ROOT.
- Los comandos de formato ahora funcionan en los argumentos de
\title,\generatelistfunciona correctamente en las estructuras TOC de los proyectos de ayuda Qt, y los prefijos de enumerador personalizados están soportados en\qmlenum. - Se ha unificado la estructura HTML para la documentación de miembros de QML y C++. Este cambio introduce nuevas clases CSS (
qml-member,qml-property,qml-method,qml-property-group) en la salida HTML de QDoc. - Análisis de código: Mejorada la resolución de enum con ámbito, el manejo de herencia QML con detección de ciclos, y la correcta preservación de tipos declarados e información de variables en ficheros de índice.
- Añadida compatibilidad con LLVM/Clang 21, con la versión mínima soportada actualizada a 17.0.6.
- El comando
\tableofcontentsestá oficialmente obsoleto.
Qt Linguist
- Añadidas etiquetas como forma de categorizar las traducciones basadas en ID en grupos significativos sin afectar al comportamiento en tiempo de ejecución. Consulte la documentación de las traducciones basadas en ID de texto y la entrada del blog para obtener más detalles.
- Añadidos nuevos ejemplos de i18n a la documentación.
- Añadida la traducción AI para Qt Linguist para traducciones automáticas utilizando LLMs. Para más información, consulta la documentación sobre la traducción automática y la entrada del blog.
- Se ha añadido el ejecutable ltext2id para migrar proyectos de traducción basada en texto a traducción basada en ID. Para más información, véase Uso de ltext2id.
- Se ha añadido el ejecutable lcheck para realizar la validación por lotes de archivos TS. Consulte Uso de lcheck para obtener más información.
- Añadido soporte para atributos C++ en el analizador sintáctico de lupdate.
- Uso obsoleto de //= metastrings en el analizador sintáctico de lupdate.
- Opción
lupdate -proobsoleta para procesar archivos .pro directamente. Utilicelupdate-proen su lugar. - Eliminado el ejecutable lprodump. Su funcionalidad está ahora disponible a través de la opción
lupdate-pro -dump-json.
Cambios en la plataforma
Cambios en el sistema de compilación
- Añadida la opción de configuración -generate-vcpkg-manifest. Esto genera un archivo vcpkg.json en el directorio de construcción. Para generar el manifiesto sin configurar Qt, ejecute configure con -generate-vcpkg-manifest -dry-run.
- Cuando configure con -vcpkg, genere un archivo de manifiesto vcpkg en el directorio de compilación y establezca VCPKG_MANIFEST_DIR en el directorio de compilación para utilizar ese archivo de manifiesto. Puede desactivar la generación del manifiesto con -no-generate-vcpkg-manifest. Puede desactivar la configuración del directorio de manifiesto pasando - -UVCPKG_MANIFEST_DIR a configure.
Plataformas de escritorio
Windows
- Añadido soporte y detección de Windows 11 25H2 (Build 10.0.26200) a través de QOperatingSystemVersion.
- Hay varias mejoras de accesibilidad a las ventanas de nivel superior y enfoque.
- Se ha mejorado la gestión de la actualización de la frecuencia de actualización.
- Añadido soporte experimental para ARM64EC cuando se utiliza Visual Studio 2026. Para usar esta configuración añada
/arm64ECaCFLAGSasí como/arm64ECy/d2arm64ECMarkAllFuncsPatchablea sus variables de entornoCXXFLAGSen su máquina Windows sobre ARM y configure y compile Qt como lo hace normalmente.
Linux
- El plugin Wayland ganó repetición de teclas del lado del servidor, preferencia para decoraciones del lado del servidor, soporte experimental para
xx-session-management-v1, y numerosas correcciones de estabilidad (ventanas emergentes, desplazamiento, superficies fuera de pantalla, portapapeles). - Se ha eliminado el motor de pintura nativo X11 (XRender) para XCB. El uso de este motor requería habilitarlo en tiempo de compilación con una opción de CMake (
-xcb-native-painting) y habilitarlo en tiempo de ejecución con la variable de entornoQT_XCB_NATIVE_PAINTING. - Se ha mejorado la accesibilidad añadiendo soporte para la interfaz AT-SPI Collection, que proporciona un mecanismo más eficiente para recuperar objetos accesibles dentro de la jerarquía de accesibilidad de una aplicación. Esta interfaz también permite el modo de navegación en el lector de pantalla Orca.
- XKB: se ha ampliado la asignación de teclas para Qt::Key_Call / Qt::Key_Hangup.
macOS
- Las aplicaciones aisladas ahora pueden acceder a archivos fuera de la aplicación aislada (los llamados recursos de ámbito de seguridad) tanto para lectura como para escritura. Los archivos o carpetas elegidos por el usuario a través de diálogos de archivo o mecanismos nativos similares se gestionan de forma automática y transparente, incluido el acceso persistente a través de la aplicación y los reinicios del dispositivo.
- Se ha añadido QNativeInterface::QCocoaScreen para acceder al NSScreen subyacente.
- La conversión entre CGImageRef y QImage admite ahora una gama más amplia de formatos de imagen, incluidos QImage::Format_RGB30 y formatos de punto flotante importantes para el contenido HDR.
- El motor de iconos de Apple respeta ahora la dirección de diseño del pintor, produciendo iconos específicos RTL si están disponibles en el conjunto de iconos SF Symbols.
- Las rutas de archivo seleccionadas a través de los paneles nativos de abrir/guardar están ahora normalizadas NFC, lo que garantiza comparaciones coherentes de los nombres de archivo independientemente de si el sistema de archivos almacena los nombres en forma NFD.
Plataformas móviles
Android
Qt para Android
- Qt Jenny ahora soporta la implementación de interfaces Java y la extensión de clases Java en C++.
- Compatibilidad con la entrega de funciones de Play Store.
- Soporte para Android 16.
- Actualizado a Gradle 9.3.1 y Android Gradle Plugin 9.0.0.
- Actualizado a JDK 21 LTS y compatibilidad con JDK 17 LTS.
Qt Quick para Android
- Añadido QtQuickView.invokeMethod() para llamar a funciones QML desde Java/Kotlin.
- Soporte para registrar señales antes de cargar QML View.
iOS
- Añadido soporte para iconos de archivos en el tema de la plataforma.
- Añadido soporte para QFileOpenEvent para peticiones externas para abrir archivos.
- Las aplicaciones en sandbox ahora pueden acceder a archivos fuera del sandbox de la aplicación (los llamados recursos de ámbito de seguridad) tanto para lectura como para escritura. Los archivos o carpetas elegidos por el usuario a través de diálogos de archivo o mecanismos nativos similares se gestionan de forma automática y transparente, incluido el acceso persistente a través de la aplicación y los reinicios del dispositivo.
- Se ha añadido compatibilidad con diálogos de guardado nativos.
Plataformas integradas
Linux
- EGLFS/KMS ahora soporta hot-plug y hot-reload de pantallas en tiempo de ejecución (protegido por la variable de entorno
QT_QPA_EGLFS_HOTPLUG_ENABLED). - Se ha añadido un nuevo backend QNetworkInformation basado en ConnMan.
- DirectFB: se ha añadido la asignación Qt::Key_Call.
Boot to Qt
- Nuevas plataformas de nivel 2:
- NXP i.MX 8M Plus LDDPR4 EVK
- Toradex i.MX 95 Verdin
- Kit de visión Qualcomm RB3 Gen2
Plataformas web
WebAssembly
- Qt Positioning consiguió un backend para la API de geolocalización.
- Utilice la nueva herramienta
wasmdeployqtpara implantar y enviar aplicaciones Qt para WebAssembly enlazadas dinámicamente. Esta herramienta sustituye a los anteriores scripts de Pythonpreload_qt_plugins.pyypreload_qml_imports.py.
Lista de cambios en la API
Estas páginas contienen una visión general de los cambios de la API en Qt 6.11:
Problemas conocidos
Para obtener información sobre problemas conocidos en Qt 6.11, consulte la Wiki de Qt.
© 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.