Inicio > Algo nuevo por descubrir > Introducción a QML – II

Introducción a QML – II

Martes, 22 de febrero de 2011

Continuamos con el Hola Mundo

Veamos un Hola mundo sencillo y revisemos línea a línea el mismo:

image thumb23 Introducción a QML   II
 
Import’s, importamos lo necesario

Al igual que muchos lenguajes de programación es necesario importar los tipos necesarios para nuestro proyecto. En QML se realiza mediante la palabra reservada import

Muchos archivos QML importarán los tipos básicos de QML (como Rectangle o Image utilizando:

image7 thumb Introducción a QML   II

Componente Rectangle
    Un componente es un objeto declarado en un documento QML.
    En el ejemplo el componente raíz es de tipo Rectangle (Rectángulo), uno de los tipos básicos de QML. Fijaros en la asignación de un identificativo mediante id para poder referirnos al componente posteriormente. También establecemos sus propiedades (ancho, alto y color) mediante las palabras clave width, height y color.
    El componente Rectangle tiene muchas otras propiedades.

 

Componente Text

Definimos un componente Text (Texto), el cuál será hijo del componente Rectangle y que mostrará el texto “Hello world!”

La propiedad Y es utilizada para posicionar el texto de manera vertical a 30 pixeles por debajo de la parte superior de su padre.

Las propiedades font.pointSize (Tamaño de fuente) y font.bold (Negritas) están relacionadas con el tipo Font y es por ello que usan una notación con puntos (Tipo.propiedad).

La propiedad anchors.horizontalCenter (anclas.CentroHorizontal) se refiere al centro horizontal de un elemento.

Las propiedades font.pointSize y font.bold properties están relacionadas con la fuente y utilizan la notación de punto.

 

Avanzando en la teoría respecto a QML

La sintaxis de QML está basada en la especificación ECMA-262 pero con algunas diferencias:

  • El entorno de ejecución es distinto al de un web browser (típico interprete para ECMA)
  • DOM vs. QtDeclarative
  • Soporte de características de la v5 de ECMA (principalmente JSON)
  • Se añaden algunos conceptos declarativos

    Componentes (Component)
      Un documento QML tiene extensión .qml  y describe la estructura de un componente (Component)
      Un componente es un objeto declarado en un documento QML. En el ejemplo anterior uno de ellos sería Rectange
      El nombre del primer componente corresponde con el nombre del fichero. Es sensible a las mayúsculas y sigue la sintaxis calme-case. Los componentes tienen soporte para herencia.

    image thumb24 Introducción a QML   II

    Automáticamente se crea una instancia de un componente declarado cuando el programa se ejecuta. Las propiedades id’s de los componentes se utilizan para poder referenciarlos.

    image thumb25 Introducción a QML   II

     

    La parte privada de un componente no es visible por otros componentes
    La API de los Componentes está formada por propiedades, funciones y señales.

    • Propiedad (Property) – Expresión que evalúa un valor
    • Función (Function) – Llamada para realizar alguna tarea
    • Señal (Signal) – Llamada desde el componente “callback”
    Propiedades (Properties)

    Las propiedades definen las características del componente.

    • Se referencian mediante un nombre
    • Siempre empiezan con una letra en minúsculas
    • Pueden referenciar a otras propiedades mediante binding

    image thumb26 Introducción a QML   II

    • Se utiliza el id de la propiedad para referenciarlas.
    • Existe la posibilidad de usar listas de propiedades (Colecciones).
    • La propiedad por defecto se puede utilizar sin referencia por nombre.

    image thumb27 Introducción a QML   II

     

    image thumb28 Introducción a QML   II

    • Podemos exponer una propiedad interna mediante un alias (Property alias). image thumb29 Introducción a QML   II
      • Podemos agrupar y unir propiedades
      • Se referencian con la notación ’.’
      • Son visibles en el lado de C++, no dentro de QML

      image thumb30 Introducción a QML   II

       

       

      Señales (Signals)
      • Un componente puede emitir señales, que pueden ser capturadas mediante manejadores de señales (signal handlers)

      image thumb31 Introducción a QML   II

      • Los cambios en las propiedades pueden estar vinculados a señales. La sintaxis para los eventos asociados a propiedades es: on<Property>Changed

      image thumb32 Introducción a QML   II

      Podemos definir nuestras propias señales mediante la palabra clave signal

      image thumb33 Introducción a QML   II

      Funciones (Functions)

      Un componente puede exportar funciones que pueden ser llamadas desde otros componentes

      image thumb34 Introducción a QML   II

      Continuará…

      Algo nuevo por descubrir ,

      Imprimelo! Imprimelo! | Imprimelo! Guardalo como PDF!

      1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (2 votes, average: 5,00 out of 5)
      Loading ... Loading ...

      1. Sin comentarios aún.
      1. Sin trackbacks aún.