New 2 Java: Construir una Aplicación: 2.- Herencia, Paneles y Distribución

Los contenedores y los componentes son ingredientes del kit de construcción GUI sobre la plataforma Java. Los paquetes java.awt y javax.swing proporcionan contenedores y componentes predefinidos para usarlos en nuestras aplicaciones, y podemos desarrollar o personalizar los nuestros propios.

La aplicación Dive Log usa contenedores y componentes predefinidos, personalizados para cubrir las necesidades de un sencillo diario de buceo. En la clase DiveLog, creamos un contenedor Frame, extendiendo la clase JFrame, o creando un objeto JFrame con la palabra clave new. Además, creamos un segundo contenedor: JTabbedPane, sobre el que inicializamos contenedores y componentes.

Antes de continuar con la clase Welcome, donde añadiremos otros contenedores y componentes, deberíamos entender el propósito de los contenedores y los componentes.

. Contenedores

Los objetos del mundo real necesitan contenedores. Nuestro coche tiene un chasis que contiene otros tipos de contendores, como puertas, un maletero, un capó que encierra el motor, y un compartimento que contiene objetos de los pasajeros como asientos y controles para conducir el coche. Además, nuestro coche tiene otros numerosos contenedores con partes más pequeñas, o componentes, dentro. Los componentes de aplicaciones software también contienen contenedores que contienen numerosos objetos y frecuentemente otros contenedores.

Una aplicación GUI tiene al menos estos objetos:

  • Un contenedor frame para contener las partes visuales y no visuales del GUI.
  • Un contenedor panel que está seccionado en una distribución específica.
  • Componentes que son añadidos al panel dentro de las secciones de distribución especificadas
Sigue estos pasos...
  1. Abre el fichero Welcome.java en tu editor de texto.
  2. Extiende la clase Welcome con JPanel en la declaracón de clase si no lo has hecho ya en la parte 1:
    public class Welcome extends JPanel
    { //Opens class
    
    }//Closes class Welcome 
    
  3. Graba el fichero

Como la clase Welcome extiende la clase JPanel, estamos haciendo que este objeto sea un panel, en particular un JPanel, que es un contenedor. Ahora hemos creado una aplicación con:

  • Un contenedor frame que contiene un
  • contenedor content pane que contiene un
  • contenedor tabbed pane que contiene un
  • contenedor panel que conteine otros componentes o contenedores

. Components

Los componentes software permiten al usuario interactuar con una aplicación, tanto pasiva como acticamente:

  • Pasivamente
    Los componentes muestran texto, títulos e imágenes.
  • Activamente
    Los componentes permiten al usuario solicitar o dar información a través de botones, menús, botones de radio, campos de texto, etc.

Veremos muchos componentes en el navegador que estámos usando ahora, como:

  • Botones
  • Barras de Desplazamiento
  • Campos de texto.
  • Texto e imágenes

La librería del proyecto Swing tiene disponibles muchos componentes predefinicos para usarlos en nuestras aplicaciones. Cuando creamos componentes, estos objetos pueden heredar métodos de la clase JComponent, como:

  • setBackground(Color bg)
  • setForeground(Color fg)
  • setOpaque(boolean isOpaque)
  • setToolTipText(String text)
  • setVisible(boolean aFlag)

Algunos de estos métodos nos deberían parecer familiares, ya que los hemos usado en la clase DiveLog. El punto importante sobre estos métodos es que podemos llamarlos sobre cualquier componente que creemos. Veremos estos métodos en acción pronto.

En el siguiente ejercicio de programación, crearemos los componentes pasivos mostrados abajo:

  • Dos imágenes
  • Texto
  • Un área de texto
  • Un borde con título

Y estos objetos:

  • Una etiqueta con una imagen y texto.
  • Un área de texto
  • Una segunda etiqueta con una imagen
Sigue estos pasos...
  1. Abre el fichero Welcome.java en tu editor de texto.
  2. Añade las siguientes variables justo después del corchete abierto de la clase. Estas variables todavía no se han asignado:
    • private JLabel jl;
    • private JTextArea ta;
    • private JLabel diver;
  3. Graba el fichero

Estas variables se han declarado private. No hay ninguna razón para acceder a ellas desde fuera de la clase. Además. estas variables no se han asignado todavía porque su declaración fuera de un método las hace disponibles para el resto de la clase. Inicializar las variables en el constructor de la clase fuerza a estos objetos a ser construidos durante la propia inicialización de la clase.

Configurar el resto de los paneles de Welcome lleva cuatro pasos. Aquí falta el paso 2:

  1. Declarer variables.
  2. Crear objetos GUI, como etiquetas, imágenes, etc.
  3. Añadir los objetos al panel
¿Cuál es el paso 2?
   A  Seleccionar un controlador de distribución en el constructor de Welcome
   B  Crear un método main para la clase
   C  ninguno

COMPARTE ESTE ARTÍCULO

ENVIAR A UN AMIGO
COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN GOOGLE +
¡SÉ EL PRIMERO EN COMENTAR!
Conéctate o Regístrate para dejar tu comentario.