QtDesigner

Qt_Designer
Información sobre la plantilla
Qt-designer.png
Diseñador de IDE
Última versión estable4.7.3

Qt_Designer, (Diseñador Qt). Es una herramienta para la creación de IDE a partir de Qt. Incluyedo muchas características que ayudan de la manera más rápida y fácil al diseño de las mismas.

Los primeros constructores GUI

La API de Qt siempre ha hecho fácil la creación de un formulario. Usando los administradores de diseño, podemos crear formas con relativa rapidez. Sin embargo, este enfoque puede rápidamente llegar a ser tedioso si tiene muchas formas de crear. También está el "editar, compilar, ejecutar" ciclo como de comprobar el posicionamiento de widgets. Durante todo este tiempo usted puede comenzar a pensar que en realidad debería ser una interfaz gráfica de usuario para hacer su interfaz gráfica de usuario.

Al salir ya había unos cuantos constructores GUI disponible como software de código abierto, con diferentes niveles de diseño y soporte para widgets.

Arquitecto Qt, desarrollado por Jeff Harris y Klaus Ebner, le ha permitido exponer los widgets, editar mapas de píxeles para los iconos, y modificar el código de los formularios. Fue probablemente el más utilizado constructor de interfaz gráfica de usuario para las versiones 1 y 2 de Qt.

QtEZ, creado por Sam Magnuson y posteriormente mantenido por Jan Prokop, le ha permitido desarrollar la mayor parte de su aplicación sin salir del programa. Incluso se podría generar una función main () para usted.

Ebuilder, por Ernie van der Meer, se centró en la matriz - las relaciones del niño de widgets y en la construcción de estas jerarquías.

Sin embargo, los usuarios seguían pidiendo una herramienta que fue apoyada por Trolltech y que siempre se sincronizan con las versiones de Qt. Además, las primeras versiones de estas herramientas sólo se ofrece la colocación manual de widgets hijos, uno de los principales obstáculos para el desarrollo de plataforma cruzada.

El primer diseñador

Trolltech libera Qt Designer 1.0, al mismo tiempo como Qt 2.2. Desde el primer día, los diálogos creados en Qt Designer se almacenan en bien estructurado archivos XML, que una herramienta independiente, el compilador de interfaz de usuario (UIC), convertida en código C + +. Aplicaciones Qt también puede crear formularios basados ​​en archivos. Ui en tiempo de ejecución, utilizando el QWidgetFactory.

Diag1.png

La primera versión de Qt Designer también proporciona soporte completo para los formatos horizontales, verticales, y la rejilla. Los desarrolladores de Qt rápidamente podría agregar un widget hijo a un formulario, romperlos en un diseño, y ver cómo se comportan cuando el usuario cambia el tamaño de la ventana. Esta retroalimentación inmediata cortar el "editar, compilar, ejecutar" ciclo de trazar widgets.

Pero no todo fue color de rosa, sin embargo. Soporte para widgets personalizados era muy limitado, sino que se representa como una imagen estática en la forma, por lo que es difícil saber la forma real que se comportan sin construir. Además, la técnica de subclases fue algo incómodo (como el diagrama anterior ilustra) y requiere dos clases, tanto con el macro Q_OBJECT, lo que resulta en gastos innecesarios en Qt / Embedded. Por último, Qt Designer 1.0 no apoyó la creación de ventanas principales, con menús y barras de herramientas.

El segundo diseñador

Qt Designer 2.0 fue lanzado con Qt 3.0. Se ofrecen muchas características que lo distinguen de los originales de Qt Designer. En primer lugar, permitió a los desarrolladores a reducir la subclasificación por el uso del mecanismo. Ui.h. El archivo. Ui.h fue incluido por la fuente de la UIC generado y le ha permitido a las franjas horarias e incluso volver a implementar frente a la construcción y la destrucción de la forma.

Diag2.png

Un editor de código se ha incluido dentro de Qt Designer para editar el archivo. Ui.h. Además, había una ficha Origen que permite que usted agregue variables miembro, incluye, y las declaraciones de futuro, además de las señales y los slots.

El segundo Qt Designer también podría cargar varios tipos de plugin. Plugins flash le permite crear un plug-in de tu widget personalizado, lo que permite ver el flash cuando se utiliza en un formulario y acceder a sus propiedades. Otro uso de plugins fue para los magos. Incluso era posible conectarse a bases de datos desde el interior de Qt Designer y ver sus datos.

Además, Qt Designer 2.0 incluye un analizador de archivo. Pro, lo que le permite administrar su proyecto desde Qt Designer y utilizar el editor de código incorporado para editar tus archivos de código fuente. Algunos usuarios de las aplicaciones desarrolladas con Qt Designer todo.

Actualidad

Qt Designer es ahora una parte integral de Qt, pero todavía hay cosas que se puede hacer para hacerlo mejor. Por ejemplo, el editor de código perdido las características tales como ser capaz de ir a una línea determinada. También hubo problemas de sincronización si se edita un archivo. Ui.h fuera de Qt Designer.

Otro problema con Qt Designer es que no puede ser integrado en entornos de desarrollo existentes. Esto significa que los desarrolladores que disfrutaron de la productividad de los entornos de desarrollo tuvo que dejarlo de usar Qt Designer. Además, la adición de las señales, las franjas horarias, los miembros de datos, la declaración e incluye la aplicación, y más dentro de la ficha Fuente fue considerado por lo general más problemático que acaba de editar directamente los archivos de origen.

Todo esto y mucho más plomo que el trabajo que se parte de la próxima Qt Designer. Muchos de los conceptos necesarios para ser revisada. Como resultado de ello, un primer indicio de Qt Designer es parte de la primera beta de Qt 4. Una segunda versión que contiene un conjunto de características más completo se introdujo en la versión beta 2 de Qt 4. La versión que figura en el Release Candidate de Qt 4 debe ser casi idéntica a la de la última versión de Qt 4. Vamos a echar un vistazo a algunas de las características que forman parte de la nueva Qt Designer.

Qt Designer ha sido totalmente compartimentados para hacer posible su integración con IDEs existentes. Esto significa que usted puede crear un formulario, editar sus propiedades con el editor de propiedades, haga doble clic en un control, y será llevado a una ranura en la que la señal de un widget se conecta a, todo sin salir del IDE.

De Qt 4.0, un Visual Studio. NET está disponible la integración. Trabajar en la integración con otros IDEs, especialmente KDevelop y Eclipse, está prevista para finales de Qt 4 lanzamientos.

Al igual que antes, Qt Designer todavía escribe los archivos. Interfaz de usuario que contienen la especificación de una interfaz, y genera la UIC C + + código basado en el archivo. Ui. Lo que ha cambiado es que ahora uic genera una estructura simple que contiene todos los widgets y una función de setupUI () que crea los widgets y diseños. La estructura no se hereda de QObject y está totalmente definido en un fichero de cabecera.

El siguiente diagrama resume cómo los distintos archivos encajan con herencia simple o múltiple. Esto es muy similar a la subclasificación de las versiones anteriores de Qt Designer, pero esta vez sólo una clase Q_OBJECT es necesario y las necesidades de la UIC sólo para generar un archivo (ui_myform.h).

Diag3.png

Otra de las novedades de Qt 4 es que las franjas horarias que siguen una convención de nomenclatura determinada se establece conexión automática de la UIC. La convención de nomenclatura es on_objectName_signalName (), donde ObjectName es el nombre del widget hijo que emite la señal y signalName el nombre de la señal.

Para manejar archivos. Ui creados con versiones anteriores de Qt Designer, Qt 4 incluye una herramienta llamada uic3 que convierte de edad. Ui archivos al nuevo formato (con la ayuda de la biblioteca Qt3Support).

Anteriormente, cuando se quería añadir un widget a un formato ya existente, primero tuvo que romper el antiguo trazado, añadir el widget, y luego vuelva a aplicar el diseño. Con la nueva Qt Designer, puede arrastrar el widget en la forma y si hay un diseño, éste se insertará automáticamente en ella. Consejos ayudarle a determinar dónde está el flash va a terminar en el diseño.

El diseño de la red, en particular, se ha mejorado. En lugar de alguna rutina de magia que apareció para recoger las posiciones correctas para widgets, usted tiene la posibilidad de caída de los widgets que quieras. Además, puede manipular los widgets que ya están en la disposición para que tengan factores de buen estiramiento. Nunca ha sido más fácil tener un widget de tomar el lugar de dos en un diseño.

El nuevo Qt Designer todavía le permite añadir widgets a una forma y luego agruparlos en un diseño. Además, ahora es posible añadir el diseño y luego añadir los widgets a la disposición.

Qt Designer ahora hace un uso extensivo de arrastrar y soltar. Esto nos permite mostrar una vista previa del widget en el momento que comience a arrastrar en lugar de sólo una suposición en la que desea el widget para ir. También permite al usuario para clonar rápidamente los widgets en un formulario y arrastre a otras formas.

Ahora es posible crear widgets personalizados sobre la marcha que son una combinación de otros controles, simplemente arrastrándolos desde la forma de la caja de herramientas. Qt Designer recordará estos widgets y hacerlos utilizables en las formas futuras. La interfaz de arrastrar y soltar también hace posible la caída de un control en un diseño ya existente y que se mueven alrededor de los widgets en una rejilla.

Qt Designer ahora también muestra una visión general de las conexiones entre los widgets. Cambiar al modo de conexión se muestran todas las conexiones actuales. A continuación, puede agregar nuevos arrastrando las líneas de conexión entre ellos.

También hemos hecho lo posible para cambiar la interfaz de Qt Designer. La interfaz de MDI de confianza de edad todavía está presente, aunque cambió un poco. Se complementa con una nueva interfaz que utiliza ventanas de nivel superior. Si no está seguro de cuál le gusta, usted puede cambiar entre ellos sobre la marcha.

Además de ser integrable, Qt Designer es también extensible a través de plugins. Hay interfaces para widgets personalizados, para los editores de flash especial, de preferencias especiales, e incluso para sus propios componentes Qt Designer. De hecho, varios de los widgets Qt3Support se proporcionan a través de plugins. Algunos ejemplos de cómo escribir su propio widget plugins están incluidos en los ejemplos / diseñador.

Esto es posible gracias a Qt 4 mecanismo de plugin genérico. En Qt 3, sólo cinco tipos de plugins con el apoyo (formato de imagen, controlador de SQL, el estilo, el codec de texto, y los plugins flash). En Qt 4, plugins arbitrarias son posibles gracias a la herencia de una interfaz arbitraria y declarar el plugin con el Q_EXPORT_PLUGIN () macro. Qt Designer será capaz de utilizar qobject_cast <> () y cargar el plugin. Ver el QPluginLoader documentación de la clase de detalles.

Fuentes