Diseño del componente

Páginas: 33 (8206 palabras) Publicado: 17 de marzo de 2012
3.4 CREACIÓN DE COMPONENTES (VISUALES Y NO VISUALES) DEFINIDO POR EL USUARIO 

COMPONENTES VISUALES Y NO VISUALES

Se puede establecer muchas clasificaciones para los componentes. Una de ellas es la de visuales o controles, frente a no visuales.
Un componente es visual cuando tiene una representación gráfica en tiempo de diseño y ejecución (botones, barras de scroll, cuadros de edición,etc.), y se dice no visual en caso contrario (temporizadores, cuadros de diálogo-no visibles en la fase de diseño, etc). Por lo demás no existen más diferencias entre ellos, excepto, claro está, las derivadas de la visualización del componente.
 Los componentes no visuales se pueden colocar en los formularios de la misma manera que los controles, aunque en este caso su posición es irrelevante.Para empezar, los componentes visuales podemos dividirlos a su vez en dos tipos:
-Componentes interactivos: permiten que el usuario final los manipule, ya sea introduciendo datos, seleccionado elementos, etc. De forma que estos componentes pueden recibir el foco (con SetFocus) así como los eventos propios del teclado y del ratón. Normalmente, el propio sistema operativo es el encargado de dibujar elaspecto del componente, haciendo el componente las llamadas correspondientes para que este aspecto cambie.

-Componente gráficos: el propio componente es el encargado de dibujar en la pantalla lo que crea oportuno, bien a través de las funciones básicas del API de Windows (con el objeto TCanvas) o bien a través de otras librerías gráficas, como OpenGL, DirectX, etc. Estos componentes, no suelenrecibir eventos del usuario final, aunque si eventos del propio programador, ya que su cometido no suele ir más allá de mostrar ciertos gráficos o imágenes en la pantalla.
 Si tuviéramos que crear un componente interactivo desde el principio, sería demasiado complejo, ya que tendríamos que luchar encontrar el propio API del sistema operativo, gestionando sus mensajes, las llamadas las funciones abajo nivel, etc. Sin embargo, podemos aprovechar la mayoría del trabajo hecho por Borland en la VCL, y crear componentes interactivos a partir de otros ya existentes, aplicado la técnica de herencia.
Dado que un componente es un objeto como otro cualquiera, podremos aplicar en el todas las técnicas de la orientación a objetos: encapsulación, herencia y polimorfismo.
La encapsulación ya la hemosutilizado sin apenas darnos cuenta, simplemente definiendo ciertos atributos como privados, para que no puedan ser accedidos desde fuera de la clase, y otros públicos o publicados (pulished) para ser usados por el programador que utilice el componente.    

La herencia nos permite reutilizar código, haciendo que una  clase dada (que llamaremos clase hija) adquirida a todos los atributos y métodospúblicos y protegidos de otra, llamada clase padre. De este método, podemos aprovechar mucho código escrito, simplemente heredando de una clase ya escrita. Por si fuera poco, también es posible que una clase hijo tenga a su vez mas descendencia, adquiriendo estos las características del padre y del "padre del padre", es decir: del abuelo.
La técnica de la herencia, aplicada a los componentes,nos permite personalizar cualquier componente, o porque queremos ampliar las posibilidades del componente.

La propia VCL utiliza la herencia continuamente, bien para utilizar código de clases padre, o bien para ofrecernos clases padre de las que nosotros podemos heredar. Muchas "suites de componentes" hacen también esto, proporcionando un componente heredando a partir de cada uno de los básicos,y añadiendo en estas nuevas características.

Para explicar cómo crear un componente interactivo, vamos a hacerlo a través de un ejemplo práctico: supongamos que necesitamos mostrar un árbol que muestre los directorios a partir de una carpeta dada, incluso pongamos que necesitamos mostrar el típico árbol de "MI PC", mostrando todas las unidades y las carpetas de cada una.

Para ello,...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Diseño con componentes discretos
  • Componentes del diseño curricular
  • Diseño del Componente ETL
  • La arquitectura como objeto y los componentes arquitectónicos del diseño.
  • “Diseño de un programa de estimulación de lenguaje: componente pragmático”
  • Diseño de coleccion componentes de calzado
  • Diseño a nivel componentes
  • Diseño De Nivel De Componentes

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS