Arreglos de Objetos | Práctica 2 | Bus
Requerimientos
Codificar una aplicación de reserva de lugares en el camión con:
-Tablero de botones de 4X11 (numerar, de forma consecutiva los asientos, es decir que la etiqueta de cada botón sea un número)
-Reservar el asiento cuando se hace clic sobre el botón que lo representa y cambiar el color y etiqueta de dicho botón.
-Se pulsa un botón especial (el 45=44+1) para mostrar cuales asientos se han reservado.
-Los números de los asientos reservados se pueden almacenar en una variable de tipo String la cual hará el papel de acumulador. Cada que se hace clic en un botón se puede agregar el numero de asiento a la cadena.
Introducción
En esta practica número 2 se desarrollará una aplicación con GUI, haciendo uso de los arreglos de objetos para resolver los problemas que se nos plantearon. Con el fin de aprender a utilizar los arreglos de objetos y saber cómo implementarlos en la solución de algún problema
Objetivos
1: Diseñar una GUI adecuada para el programa
2: Facilitar el desarrollo del programa haciendo uso de arreglos de objetos
Desarrollo
Como primer punto se crea una clase Buss, posteriormente se hereda la clase JFrame y se implementa ActionListener, después importamos las librerías y procedemos a declarar un arreglo de botones, el cual almacenara nuestros 44 botones de los asientos, con 2 botones adicionales de consulta y reinicio, 2 paneles que nos permitirán usar 2 layouts diferentes en un solo layout de la aplicación, 5 etiquetas las cuales mostraran los mensajes al usuario y finalmente un arreglo de strings el cual almacenara los asientos reservados en orden de la reserva, para posteriormente pasarlos a un String y mostrarlo en una etiqueta.
En este caso desarrolle 3 metodos para el constructor, el de ventana superior, ventana inferior y ventana. En ventana superior cree el panel superior, use un layout nulo y coloque las etiquetas para poder mostrarle al usuario mensajes y otras etiquetas para mostrar el resultado de sus acciones de reserva y el botón de reinicio, el cual resetea el programa. En ventana inferior cree el panel inferior y use el gridlayout para desplegar mi matriz de botones de 4 filas por 11 columnas con un pequeño espacio entre los botones y le agregue el boton de consuta, y sus respectivos ActionListener. Y finalmente en ventana defini el tamaño de la ventana de la aplicación, la hice visible y use un gridlayout de 2 filas y una columna en el cual muestro el panel superior en la parte superior y el panel inferior en la parte inferior.
Después cree el método actionPerformed, el cual escuchara los eventos de los botones, lo primero que realiza es guardar el botón que ha seleccionado el usuario, posteriormente comprueba por condicionales que botón es. En caso que sea el botón de reinicio, se destruirá la ventana y generara una nueva. En caso que sea el botón de consulta, pasara los elementos que se guardaron en el arreglo de asiento (Strings) a una variable resultado de tipo String de forma concatenada en el orden que se fueron reservando los asientos y los imprimirá en la etiqueta de asientos reservados, en caso de que todos los asientos estén ocupados se creara una ventana emergente que nos indicara que todos los asientos están ocupados y terminara. Y finalmente si es uno de los 44 botones de la matriz, guardara el número de su etiqueta en el arreglo de asiento (String), posteriormente cambiara el nombre de la etiqueta a R de reservado, cambiara el color del botón a rojo y lo deshabilitara para que no se pueda volver a usar y mostrara en la etiqueta de reserva de asiento el número del asiento que se acaba de reservar.
En la función main únicamente llamamos al contenedor-constructor para que se ejecute el programa.
Comentarios
Publicar un comentario