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

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.