En esta página

Interfaces de usuario

Las principales tecnologías de interfaz de usuario del framework Qt son Qt Quick y Qt Widgets. Qt Quick interfaces son fluidas, dinámicas y son mejores en interfaces táctiles. Qt Widgets son para crear aplicaciones de escritorio complejas. Puede crear interfaces Qt Quick y Qt Widgets con el aspecto nativo de la plataforma de destino.

Crear interfaces de usuario con Qt Quick

Qt Quick sirve para crear interfaces de usuario dinámicas y fluidas. El módulo Qt Quick Controls proporciona tipos QML como botones, cuadros de diálogo y menús. Puede utilizar QML, un lenguaje declarativo, para crear la interfaz de usuario y JavaScript para implementar la lógica.

La siguiente lista contiene información general relacionada:

Qt Widgets Interfaces de usuario

Qt Widgets son los elementos de interfaz de usuario típicos de los entornos de escritorio. Los widgets se integran bien en la plataforma subyacente y ofrecen un aspecto nativo en Windows, Linux y macOS. Los widgets son elementos de interfaz de usuario maduros y ricos en funciones, adecuados para interfaces de usuario mayoritariamente tradicionales. A diferencia de Qt Quicklos widgets están pensados para crear grandes aplicaciones de escritorio y son menos adecuados para crear aplicaciones táctiles con interfaces fluidas.

La siguiente lista contiene resúmenes relacionados para Qt Widgets:

Comparación de tecnologías de interfaz de usuario

En la tabla siguiente se ofrece una comparación de Qt Quick y Qt Widgets, en la que se destacan sus puntos fuertes, sus limitaciones y sus casos de uso ideales:

CaracterísticasQt Quick y Qt Quick ControlsQt WidgetsExplicación
Lenguajes principalesQML y JavaScriptC++Qt Quick es declarativo. Qt Widgets es imperativo, C++ clásico.
Aspecto nativoSí (a través de los estilos de Qt Quick Controls ).Sí (widgets de escritorio nativos).Ambos soportan la apariencia nativa en sus plataformas de destino.
Estilos personalizados(estilos personalizables, componentes QML personalizados).(hojas de estilo Qt).Ambos frameworks permiten una amplia personalización de estilos mediante distintos mecanismos.
Animaciones y transiciones fluidasSí (animaciones aceleradas por GPU integradas).Limitado (compatible con QPropertyAnimation, pero no diseñado para animaciones de IU fluidas).Qt Quick está diseñado para interfaces de usuario animadas y modernas. Qt Widgets no lo está.
Compatibilidad táctilSí (diseñado para funciones táctiles y gestos).Limitado (existen eventos táctiles, pero Qt Widgets asume la entrada de ratón y teclado).Qt Quick Qt Widgets requiere más trabajo manual para una buena experiencia de usuario táctil.
Widgets estándar del sectorSí (proporciona controles de escritorio comunes, y los componentes personalizados pueden implementar cualquier widget necesario).Sí (amplio conjunto de widgets de escritorio maduros y listos para usar).Qt Quick puede implementar todo tipo de controles de escritorio, pero Qt Widgets incluye un conjunto más amplio de widgets tradicionales listos para usar.
Programación modelo/vistaSí (soporte flexible de modelos con vistas basadas en delegados como ListView y TableView).Sí (amplio conjunto de vistas MVC clásicas, como QTableView, QListView y QTreeView).Ambas tecnologías soportan una sólida programación modelo/vista. Qt Quick utiliza delegados para separar claramente los datos de la presentación, mientras que Qt Widgets proporciona un amplio conjunto de clases modelo/vista maduras y listas para usar.
Creación rápida de prototipos de interfaz de usuarioSí (iteración muy rápida en QML).Sí (rápido para interfaces de usuario tradicionales, especialmente con Qt Widgets Designer).Qt Quick es especialmente adecuado para la creación rápida de prototipos visuales, mientras que Qt Widgets permite ensamblar rápidamente interfaces de escritorio clásicas mediante Qt Widgets Designer.
Gráficos acelerados por hardwareSí (aceleración por GPU a través de Qt Quick Scene Graph).Parcialmente (los widgets se renderizan por software; los widgets OpenGL son posibles, pero aislados).Sólo Qt Quick proporciona aceleración GPU de escena completa integrada. Más información en Gráficos.
Graphical EffectsSí (desenfoque basado en shaders, resplandor, sombra, efectos de color, etc.).Limitado (efectos básicos mediante Qt GUI únicamente).Qt Quick ofrece efectos visuales enriquecidos basados en GPU. Qt Widgets sólo ofrece efectos sencillos de CPU.
Procesamiento de texto enriquecido.Sí (las clases de documentos de texto enriquecido de Qt pueden utilizarse en Qt Quick y Qt Quick Controls' TextArea, pero pueden requerir alguna implementación en C++).Sí (soporte completo a través de QTextDocument, QTextEdit, y clases relacionadas).Ambas tecnologías pueden utilizarse para construir editores de texto complejos. Qt Quick se integra con el motor de texto enriquecido de Qt a través de QTextDocument, mientras que Qt Widgets proporciona un conjunto maduro de clases listas para usar para el manejo de texto.

Nota: Puede mostrar vistas QML en una interfaz de usuario Qt Widgets. Para obtener más información, consulte Qt Quick Widgets.

Las siguientes páginas contienen más información sobre el diseño y desarrollo de interfaces de usuario:

© 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.