Saltar la navegación

8.1.- Creación del componente.

Comenzamos creando un proyecto NetBeans nuevo de tipo Java Application. Nos aseguramos de desmarcar las opciones Crear clase principal y Configurar como proyecto principal y ponemos de nombre al proyecto ProyectoTemporizador, por ejemplo. Le podemos añadir un paquete con el nombre Temporizador.

Una vez creado el proyecto, le añadimos un archivo nuevo de tipo Componente JavaBeans (si no lo encuentras en la lista que sale en el menú contextual, haz clic en la opción Otros... para acceder al resto de tipos de archivos). Puedes llamar a la clase TemporizadorBean y se ubicará en el paquete Temporizador.

Ilustración de la captura de pantalla del proceso de creación del componente.
Montaña Martín Vergel (Elaboración propia)
Para que una clase se pueda considerar un componente debe implementar la interfaz Serializable y, además, tener un constructor sin argumentos que vimos eran requisitos para la creación de componentes.

El objetivo de este componente es disponer de una etiqueta con un comportamiento específico. Puesto que ya tenemos un control con parte de la funcionalidad que nos interesa, como un método para pintar el texto con el formato adecuado ya implementado, nos serviremos de él heredando nuestra clase de JLabel, quedando la signatura de la clase así:

public class TemporizadorBean extends JLabel implements Serializable

Obviamente, tendremos que importar el paquete javax.swing.JLabel.

El proyecto cuenta con una propiedad de ejemplo que puedes eliminar (su declaración y los métodos get y set de la propiedad), así como un gestor de escuchadores de cambio de propiedades que no necesitaremos, quedando el siguiente código para empezar:

public class TemporizadorBean extends JLabel implements Serializable {
            private PropertyChangeSupport propertySupport;
            public TemporizadorBean() {
            propertySupport = new PropertyChangeSupport(this);
            }
            }

Autoevaluación

Pregunta

Cuando queremos crear un componente que use características de otro, como por ejemplo una etiqueta, como en el ejemplo acudimos a...

Respuestas

La implementación de la clase.

La herencia.

El uso de una propiedad del tipo de la clase cuyas características queremos usar.

No es posible hacer crear un componente con características de otro.

Retroalimentación