Antes de empezar a interactuar con los distintos componentes de forma dinámica tenemos que aprender algunas cuestiones más:

import para todo

La clausula import se puede utilizar para referenciar a ficheros QML en otros directorios

  • Importación de fichero simple
  • o de directorio
image
  • Un directorio importado puede ser referenciado mediante un alias (qualifier)
image

La clausula import también se puede utilizar para importar ficheros JavaScript

  • No se pueden importar directorios
  • Tienes que ponerles obligatoriamente un alias (qualifier)
image

Ámbitos de las propiedades

  • Las propiedades (properties) de los componentes son visibles en los hijos. Que lo sean no quiere decir que sea una buena práctica
image
  • Mejor es que en cada componente tenga un API propio (propiedades específicas).
image

Ámbito de los Scripts

  • Es indiferente que los scripts estén contenidos en el mismo fichero try this site.qml o sean ficheros externos .js
image
  • Siempre que se pueda separa el UI (.qml) y el comportamiento del mismo (.js).

Componentes declarados en línea (Inline components)

  • Los componentes pueden declararse en línea
image
  • Se suele usar para declarar componentes pequeños o privados
  • Se pueden instanciar mediante un cargador (Loader). Esto nos permite cargarlos e instanciarlos desde la web.
image

Carga dinámica (Dynamic loading)

Además de los cargadores (Loader), los componentes se pueden leer dinámicamente mediante código script.

  • Qt.createComponent (Parámetro: File o URL)
image
  • component.createObject crea una instancia del componente (Parámetro: objeto padre)
image
  • Qt.createQmlObject permite crear objetos QML desde una cadena
image

One Comment

  1. Gracias por los tutoriales…son de una gran ayuda. Me gustaría que nos explicara en un ejemplo como se puede integrar QT y velneo V7…muchas gracias..

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *