UNIDAD 5.- C++BUILDER COMPONENTES

TEMA 5 CREACION E INSTALACION DE COMPONENTES VISUALES C++BUILDER


La herramienta mas poderosa de la programacion moderna (objeto-visual) es la capacidad increible y la manera tan sencilla de poder crear y manipular nuestros propios componentes, que seguramente seran, mucho mas faciles de usar y de entender, que los que trae de default el C++Builder o los obtenidos de Internet.

Supongase que se quiere un componente muy especializado o mas estetico, por ejemplo TRadio o TGrabadora (observar que componentes personales empiezan con la letra T, esto es una convencion), solo se tiene que :

* primero derivarlo de algún componente del C++Builder que se le parezca o sea apropiado, por ejemplo el media player.

* luego modificarle, o agregarle algunas o nuevas propiedades, esto se hace mediante código ya conocido,

* después agregarle nuevos eventos, o programarle, algún default a los ya heredados.

* al final, instalarlo en alguna de las paginas de componentes.

Notas.

1.- Todo nuevo componente visual, se debera derivar de algun componente ya creado.

2.- Todo componente hereda todas las propiedades (caracteristicas), metodos(procedimientos o funciones propios) y eventos (respuestas programadas del componente a una interacción con otro objeto o componente) del componente padre.

3.- Borland provee de una tabla, que muestra todos los componentes de caracter visual y no visual, dicha tabla es necesario conocerla, para poder localizar el componente apropiado, para derivar el componente que se esta creando.

Diagrama Simplificado de la jerarquía de componentes

image114.jpg

* tomado de Component Writer's Guide

* El diagrama jerárquico completo, es muy grande y muestra mas de 100 clases y objetos, es necesario conseguirlo y tenerlo a la mano.

El ejemplo será muy simple, se derivara un componente llamado miboton a partir del componente visual TButton, solo se modificaran algunas propiedades.

1.- Cargar el C++Builder

2.- File, Close All

3.- Component, new y aparece la siguiente ventana:

image115.jpg

Class Name = miboton.

Ancestor Type= usar flechita para buscar y seleccionar TButton.

Palette Page = usar flechita para buscar y seleccionar Standar.

Click en Ok

4.- Aparece ahora el siguiente código dentro de unit1.cpp:

observar las cuatro partes o áreas bien diferenciadas entre si y la notas (encerradas entre {{}} personales puestas ahí para su aclaración.

//----------------------------------------------------------------
{{ primera área, solo código para incluir la librería de componentes
visuales(vcl.h) y una librería de interfase(mas adelante se explica que
significa(ver Pascal)) llamada unit.h }}
  #include <vcl\vcl.h>
//----------------------------------------------------------------
{{ segunda parte, código de C++Builder para verificar que el componente
creado miboton, es derivado de un componente valido y visual existente,
en este caso de TButton }}
static inline miboton *ValidCtrCheck()
{
return new miboton(NULL);
}
//----------------------------------------------------------------
{{ tercera área y la mas importante, es el constructor (primer
procedimiento o función que se ejecuta cuando se usa este componente, es
decir se activa automáticamente en el momento de ponerlo en Form1), es
decir es en esta parte donde se pueden agregar las modificaciones a las
propiedades que se pretenden hacer, posteriormente desde aquí también se
puede enlazar o llamar o invocar a otros métodos propios }}
__fastcall miboton::miboton(TComponent* Owner): TButton(Owner)
{
}
//----------------------------------------------------------------
{{ cuarta área, código de C++Builder para registrar nuestro componente en
la pagina "Standar" }}
namespace Unit1
{void __fastcall Register()
{
TComponentClass classes[1] = {__classid(miboton)};
RegisterComponents("Standard", classes, 0);
}
}
//----------------------------------------------------------------
Como se observa, solo se deberá usar la tercera área, solo escribir el
siguiente código dentro de las llaves que están abajo del constructor.
//----------------------------------------------------------------
__fastcall miboton::miboton(TComponent* Owner): TButton(Owner)
{
Height = Height * 2;
Width = Width * 3;
Font->Color=clGreen;
Caption = "Hola, Bienvenido a C++Builder";
}

Se ha insistido bastante, que es necesario conocer y estudiar y aprender todas las propiedades, métodos y eventos de todos los componentes visuales.

5.- File, Save As, escribir miboton y luego click en Save.

Con este paso el nuevo componente miboton, queda en el directorio Bin(en dos archivos, miboton.cpp y miboton.h) de C++Builder, listo para instalarlo en la paleta de componentes, los siguientes pasos son similares a la instalación de componentes bajados de Internet.

6.- File, Close All

7.- Componente, Install

8.- Add

9.- Browse y click en miboton

10.- Open, y ya debe aparecer abajo en la ventana izquierda de componentes instalados.

12.- Click en OK, y empieza a compilar la librería de componentes, y esperar hasta que Done=Make y entonces click en OK.

Si no hay errores, el componente miboton ya se encuentra en la pagina standard y listo para que lo use cualquier aplicación, si hay errores, usar el siguiente procedimiento de corrección y modificación de errores y componentes.

Politica de Privacidad