Red de conocimiento informático - Material del sitio web - Cómo utilizar archivos ui generados por QtDesigner

Cómo utilizar archivos ui generados por QtDesigner

El primer paso es crear un archivo ui.

Primero, debes usar Qt Designer para dibujar tu propia interfaz y guardarla como myform.ui (aquí myform se puede reemplazar con tu nombre favorito).

Al crear su propio archivo de interfaz, debe prestar atención a los siguientes puntos:

1. Recuerde el nombre del archivo ui, porque el código generado por uic se almacenará en ui_myform.h

2. Recuerde el nombre del objeto del formulario principal, porque el nombre de clase proporcionado por el archivo ui llevará el nombre del formulario

3. base de su selección de formulario. La clase debe ser compatible con la clase de formulario en su código.

4. Recuerde darle a cada control al que deba acceder más tarde un nombre de objeto significativo y fácil de recordar, porque. los controles proporcionados por el archivo ui llevarán el nombre Nombra estos nombres de objetos

Después de comprender los puntos anteriores, será muy sencillo usar tus archivos ui en el código.

El segundo paso es agregar el archivo ui al proyecto

Este paso es el más simple. Solo necesitas modificar el archivo pro y agregar FORMS=myform.ui

qmake -project El comando también puede identificar archivos con el sufijo ui y agregarlos al proyecto.

El tercer paso es hacer referencia al archivo ui en el código

Hay tres métodos introducidos oficialmente para usar archivos ui, uno es la referencia directa, el segundo es la herencia única y el el tercero es la herencia múltiple. El primer método es realmente muy poco práctico. Solo mire los ejemplos en el documento. No existe una diferencia esencial entre el segundo y el tercer método. Aquí nos centraremos en ellos.

El archivo ui eventualmente se traducirá al código C estándar y se almacenará en un archivo .h. Este proceso solo se realiza después de llamar a make, por lo que inicialmente no verá este archivo ui_myform.h. El archivo solo se genera después del proceso de creación. Pero no importa, aún podemos escribir código correcto sin este archivo.

En pocas palabras, el método de herencia única significa que primero debe personalizar una subclase (en lo sucesivo, MyForm) en el código. Esta clase debe derivarse de la clase de formulario correspondiente al formulario (. o su subclase compatible) Derive; y use la clase generada por ui para definir una variable miembro en la clase (más tarde escrita como myui). De esta manera, las variables y funciones en myui y myui se pueden llamar directamente en el constructor de MyForm, lo cual es muy conveniente de usar. Por ejemplo, aquí hay un archivo de interfaz de usuario llamado myform.ui, y el nombre del formulario definido en el archivo de interfaz de usuario es BigWidget

La declaración de clase simple anterior es el mejor de los tres primeros puntos mencionados anteriormente. Por ejemplo, consulte la descripción textual de los puntos clave y el código específico para comprender el significado. Otra cosa interesante aquí es que las clases proporcionadas por el archivo ui están incluidas en el espacio de nombres llamado Ui. El propósito de esto es separar el espacio de nombres del archivo ui del código del usuario para evitar conflictos de nombres entre los dos. En consecuencia, al escribir código, también debe prestar atención al uso del método "Ui ::" cuando use clases en el archivo ui.

Veamos el archivo cpp nuevamente

Aquí se escribe una función aleatoria para ilustrar cómo llamar a los controles definidos en el archivo ui en la clase de formulario. Este código es muy simple, así que no lo explicaré mucho.

Con la base de la herencia única, aprender la herencia múltiple es pan comido. Echemos un vistazo al código y lo entenderás.

¿Es posible que todos entiendan sin explicación? La herencia múltiple en realidad significa no solo derivar de la clase de formulario requerida por el formulario, sino también agregar la clase misma proporcionada por la interfaz de usuario. La ventaja de esto es que su clase de formulario hereda todos los controles y métodos en la interfaz de usuario, por lo que puede escribir menos palabras al llamar.

No hay diferencia entre los dos métodos de herencia única y herencia múltiple. Puede elegir según sus propios hábitos de programación.

El cuarto paso es compilar y verificar que cuando el archivo pro contenga información FORMS correcta, ejecute qmake make para compilar el proyecto; Si observa detenidamente el resultado durante make, encontrará que make llamará automáticamente a uic para generar el código requerido cuando se compila por primera vez. Después de hacerlo, se genera el archivo ui_myform.h. Se recomienda que eche un vistazo al contenido de este archivo.