Sei sulla pagina 1di 5

INSTRUCTIVO – Java Swing Parte 2

Tecnología en Análisis y Desarrollo de Sistemas de Información


Proceso: Ejecución de la Formación Profesional Centro Latinoamericano de
Procedimiento: Desarrollo Curricular Especies Menores
Ing. Diana Lorena Velandia Vanegas

Introducción

El siguiente material esté enfocado en guiarlo en la creación de interfaces


gráficas con lenguaje Java a través de Netbeans. En esta segunda parte
verá como trabajar con tablas y diálogos.

Programando en Java Swing


Primero veremos la lógica de cada control o widget, Java maneja dos líneas: Escritorio (Stand-
Alone) y Web. Nos enfocaremos en la parte de escritorio. Veamos en detalle cada control:

Control En Java Función


Tabla JTable Crear filas y columnas que almacenen
información o lean información. La
presentación de datos tabulados es una de las
tareas más comunes que se presentan al
momento de crear interfaces gráficas; desde la
simple tabla que permite únicamente mostrar
el resultado de una consulta, hasta las que
permiten editar directamente el contenido de
cada celda, ordenar las columnas, personalizar
su apariencia, etc.
Dialogos JButton Realizar acciones determinadas por el usuario
Consulta de la API:
http://docs.oracle.com/javase/7/docs/api/javax/swing/JTable.html

Creando JTable (Ejemplo 1)


Comenzaremos creando una tabla sencilla. Esta tabla únicamente mostrará un conjunto de datos
definidos desde su constructor, para ello primero daremos una vistazo rápido a
los constructores que proporciona esta clase:
 JTable()
 JTable(int numRows, int numColumns)
 JTable(Object[][] rowData, Object[] columnNames)
 JTable(TableModel dm)
 JTable(TableModel dm, TableColumnModel cm)
 JTable(TableModel dm, TableColumnModel cm, ListSelectionModel sm)
 JTable(Vector rowData, Vector columnNames)

1
INSTRUCTIVO – Java Swing Parte 2
Tecnología en Análisis y Desarrollo de Sistemas de Información
Proceso: Ejecución de la Formación Profesional Centro Latinoamericano de
Procedimiento: Desarrollo Curricular Especies Menores
Ing. Diana Lorena Velandia Vanegas

JTable (Ejemplo 2) Modelo de Tablas


Los modelos de tabla son objetos que implementan la interface TableModel; a través de ellos es
posible personalizar mucho más y mejor el comportamiento de los componentes JTable,
permitiendo utilizar al máximo sus potencialidades.
Todas las tablas cuentan con un modelo de tabla, aunque en el ejemplo 1 no se haya especificado,
existe uno por omisión
El siguiente ejemplo intenta mostrar cómo cada componente JTable obtiene siempre sus datos
desde un modelo de tabla.

Para el ejemplo lo primero que haremos es tener una clase que almacene los objetos Estudiante
con los cuales se llenará la tabla:

En Netbeans crearemos una tabla sin modelo, ya que este modelo se creará a partir de código.

2
INSTRUCTIVO – Java Swing Parte 2
Tecnología en Análisis y Desarrollo de Sistemas de Información
Proceso: Ejecución de la Formación Profesional Centro Latinoamericano de
Procedimiento: Desarrollo Curricular Especies Menores
Ing. Diana Lorena Velandia Vanegas

En el evento del botón consultar llamaremos a un método que se encargue de llenar la tabla, el
cual funciona de la siguiente manera:

Como la tabla se llenará inicialmente con información estática, la lista que se está recorriendo en el
ciclo para se llenó en el constructor de la interfaz así:

JTable (Ejemplo 3)
Veremos en este ejemplo como capturar los datos seleccionados de la tabla:

3
INSTRUCTIVO – Java Swing Parte 2
Tecnología en Análisis y Desarrollo de Sistemas de Información
Proceso: Ejecución de la Formación Profesional Centro Latinoamericano de
Procedimiento: Desarrollo Curricular Especies Menores
Ing. Diana Lorena Velandia Vanegas

JTable (Ejemplo 4)
Propiedades de Selección de Filas:
Single Selection Permite seleccionar solo una fila de la tabla
Single Interval Selection Permite seleccionar solo un intervalo de filas de la tabla
Multiple Interval Selection Permite seleccionar múltiples intervalos de la tabla

JDialog
En una aplicación java con ventanas debería haber un único JFrame, correspondiente a la ventana
principal de la aplicación. El resto de ventanas secundarias deberían ser JDialog.
¿Por qué es esto?
Un JFrame en una ventana que en Windows crea, en la barra de herramientas, donde está el
menú de "inicio" y las aplicaciones que tenemos abiertas, un nuevo botón de aplicación abierta. En
una aplicación lo normal es que sólo haya un botón ahí. Si creamos varios JFrame en nuestra
aplicación, aparecerán varios botones, uno por cada JFrame.
El JDialog no muestra este botón. Por ello, el resto de las ventanas de nuestra aplicación deberían
ser JDialog.
Hay otro motivo más. Un JFrame no admite a ninguna otra ventana como padre. El JDialog sí
admite como padres un JFrame u otros JDialog. Esto es importante porque una ventana hija
siempre quedará por encima de su ventana padre. Si al crear los JDialog les pasamos
el JFrame como padre, los JDialog siempre estarán visibles por encima del JFrame. No se podrán
ir "detrás" de él.
Si además, en el constructor del JDialog ponemos a true el flag que indica que es modal, además
de pasarle una ventana padre, entonces el JDialog impedirá el acceso a las otras ventanas hasta
que se cierre.

http://docs.oracle.com/javase/7/docs/api/javax/swing/JDialog.html

4
INSTRUCTIVO – Java Swing Parte 2
Tecnología en Análisis y Desarrollo de Sistemas de Información
Proceso: Ejecución de la Formación Profesional Centro Latinoamericano de
Procedimiento: Desarrollo Curricular Especies Menores
Ing. Diana Lorena Velandia Vanegas

Tip!
Cambiar el icono de la taza de café que aparece en los JFrame, arriba a la izquierda, es fácil.
Basta con llamar al método setIconImage() del JFrame.

Práctica – Taller 3 (Continuación)


- Desarrollar para la próxima clase el taller 5 (terminarlo) sobre Manejo
de Java Swing Parte 2. El taller esta anexo a este material.
- Para la próxima clase se deberá de manera individual realizar
exposición sobre un componente de Swing asignado por el profesor.
En la exposición se deberá mostrar para qué sirve el componente y
generar un ejemplo y un ejercicio para el resto del grupo. Los
siguientes son los elementos a trabajar:

 Color Chooser
 Toggle Button
 Slider y Spinner
 Scroll Bar y Progress Bar
 Formatted Field
 Password Field
 Text Pane y Editor Pane
 Tree
 Tabbed Pane
 Tool Bar
 Internal Frame

Potrebbero piacerti anche