miércoles, 26 de marzo de 2008

Ejercicio 1: Diseño de la ventana

Descripción



Desarrollar un programa que muestre una secuencia de numeros determinada (1, 2, 3, 4, 5, 7) de manera constante e infinita (después de mostrar un 7 deberá mostrar un 1, 2, 3). Los datos deben mostrarse en una ventana en el centro de la misma como un texto grande y poseer un botón para detener el conteo y la secuencia.

Solución propuesta



Comenzemos por la parte más aburrida desde mi punto de vista: Crear la interfaz, para esto yo se que hay herramientas pero prefiero hacerlo a mano. Para esto necesitamos una ventana, un texto grande y un botón, así que usaremos un JFrame, un JLabel y un JButton.


public class Exercise1 extends JFrame {
private JLabel numberLabel = null;
private JButton stopButton = null;

//Sobreescribimos el constructor para darle un titulo al frame
public Exercise1() {
super("Ejercicio 1");

numberLabel = new JLabel(" ");
stopButton = new JButton("Detener");
}
}


Ahora continuemos con la apariencia de la etiqueta, necesitamos que sea un texto grande


//Recuperamos la fuente de la etiqueta
Font font = numberLabel.getFont();
//Recreamos la fuente con un tamaño de 32 puntos
font = font.deriveFont(32.0);
//Establecemos la fuente nueva de la etiqueta
numberLabel.setFont(font);


Ordenamos los elementos dentro de la ventana. A mi me parece un modelo muy aplicable a un BorderLayout


this.setLayout(new BorderLayout());
this.add(numberLabel, BorderLayout.CENTER);
this.add(stopButton, BorderLayout.PAGE_START);


Y finalmente mostramos el contenido de la ventana


//Ajustamos la ventana para el tamaño de los componentes
this.pack();
//Mostramos la ventana
this.setVisible(true);

No hay comentarios: