New 2 Java: Construir una Aplicación: 3.- Recibir Entradas de Usuario

Ahora ya deber�as sentirte c�modo con los objetos y los m�todos. Hemos inicializado ejemplares de objetos predefinidos, como panels y labels, y hemos llamado a m�todos de esos objetos usando una variable, o identificador, y el operador punto. Adem�s, hemos definido nuestros propios objetos y m�todos para construir objetos GUI.

En La Parte 2, la clase Welcome introdujo la herencia, ilustraba como mostrar im�genes y etiquetas, y demostraba como ordenar objetos usando un controlador de distribuci�n.

La parte 3, refuerza estos conceptos, presenta la clase Diver, y nos mostrar� como :

  • Recuperar y mostrar entradas de usuario.
  • Entender la encapsulaci�n y el control de acceso.
  • Ordenar distribuciones anidadas.
  • Entender el manejo b�sico de eventos
  • Usar clases internar.

.�Empezar

En la Parte 1, creamos la clase DiveLog con un constructor que creaba un marco para la aplicaci�n Dive Log, un JMenu, e inicializaba un objeto JTabbedPane con seis pesta�as con t�tulo. Cada pesta�a creaba un objeto desde una clase contenedora. En la Parte 2, dise�amos la clase Welcome, que aparece en el panel Welcome.

Para esta parte del tutorial, necesitamos una imagen y la clase contenedor Diver.java que crea el panel Diver Data. Podemos usar imagenes diferentes a las proporcionadas aqu�, pero para evitar problemas de distribuci�n, debemos hacer que las im�genes tengan el mismo tama�o que las proprocionadas.

Sigue estos pasos...
  1. Grabamos la siguiente imagen en el directorio divelog/images:
O creamos una imagen propia, pero usamos el mismo tama�o que la listada arriba.

.�Preparar la Entrada de Usuario

Mostrar im�genes y etiquetas es �til, pero este aspecto de una aplicaci�n es pasivo, s�lo muestra informaci�n. La mayor�a de las aplicaciones tambi�n requieren que partes de una aplicaci�n sea activa, aceptando entradas de usuaio y haciendo algo con los datos recibidos.

El API Java contiene muchos tipos de componentes predefinidos que podemos usar para recoger datos del usuario. Aqu� tenemos unos cuantos:

  • Text fields
  • Text areas
  • Check boxes
  • Radio buttons
  • Drop-down menus
  • Buttons

Cuando dise�amos una aplciaci�n, debemos considerar el tipo de datos que va a introducir el usuario, y c�mo recoger la informaci�n. Un Dive Log generalmente contiene el nombre del buceador.Adem�s, es necesaria la informaci�n de contacto en caso de emergencia. Otros datos personales tambi�n son v�lidos, como el nivel de entrenamiento formal del buceador.

El panel Diver Data acepta entradas para que el buceador pueda introducir los siguientes tipos de informaci�n:

Personal

  • Nombre
  • Direcci�n

Contacto de Emergencia

  • Nombre
  • Relaci�n con esa persona.
  • N�mero de tel�fono.

Entrenamiento Formal

  • Lista de los distintos niveles de entrenamiento.

Recuerda que el lenguaje de programaci�n Java se basa en objetos y que se manipulan los datos dentro de esos objetos llamando a m�todos. Listar los requerimientos de datos de nuestra aplicaci�n nos ayuda a decidir que tipos de objetos vamos a necesitar crear o inicializar. La lista de arriba nos da una buena idea de los tipos de objetos que necesitamos.

La entrada de datos para la lista de arriba contiene strings, por eso el uso de campos de texto para recolectar esta informaci�n. El API Java tiene una clase predefinida para crear campos de texto para recolectar entradas de usuario.

Tambi�n podr�amos usar un campo de texto para solicitar informaci�n sobre el entrenamiento, pero esto no es apropiado para un Diario de Buceo, ya que el entrenamiento no es necesariamente un �rbol. En su lugar, probamos los check boxes. Un buceador puede marcar cada curso de entrenamiento completado.

Una vez que el usuario ha introducido los datos dentro de los campos y marcado las cajas apropiadas, el usuario necesita enviar la informaci�n. El objeto m�s com�n usado para decirle a la aplicaci�n que haga algo con la informaci�n introducida es un bot�n.

El API Java tiene un clase manejable para crear un componente boton. Pronto aprenderemos sobre JTextField, JCheckBox, y JButton.

Por cada �tem, necesitamos un objeto para etiquetar el objeto donde el usuario teclea, y necesitamos un objeto para recolectar los datos listados. En otras palabras, por cada �tem de arriba, necesitaremos al menos dos objetos. La siguiente secci�n nos muestra qu� es necesario y c�mo manejar el tabbed pane Diver Data.

.�Planear al panel Diver Data Pane

Para planear el tabbed pane Diver Data, dividimos los objetos que necesitamos y organizamos los datos a la misma vez con un diagrama. Podemos usar un papel y l�piz o un programa de dibujo.

Por ahora, listaremos los nombres de variables de las etiquetas, los campos de texto, y de los check box que necesitaremos. y los organizaremos en la distribuci�n deseada. Esto nos ayudar� a decidirnos:

  • Los objetos a crear.
  • Su nombres de variables.
  • Donde deber�an posicionarse en el panel

Una vez completado esto, podemos empezar a escribir c�digo. La imagen de abajo nos ilustra este concepto de plan:

Observa que:

  • El tipo de objeto est� a la izquierda del signo = y que el nombre de la variable est� a la derecha, como escribimos en el c�digo.
  • Los objetos Label son de color aguamarina.
  • Los objetos Text field son negros.
  • Los objetos Check box son marrones.

Esto hace m�s f�cil ver qu� objetos necesitamos crear, y por lo tanto qu� clases necesitamos incializar, y c�mo queremos que esos objetos se coloquen en el panel.

Hasta ahora hay un total de 22 objetos en este panel. Podr�as recordar que la clase BorderLayout s�lo permite que se a�ada un objeto a cada regi�n, totalizando cinco objetos:

�Podemos a�adir 22 objetos a este panel Diver Data, usando un controlador de distribuci�n borderLayout?
 A  Si
 B  No

COMPARTE ESTE ARTÍCULO

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP