Tutorial 6 - JTable - Movimiento Mouse, Teclas Direccionales
Tutorial 6 - JTable - Movimiento Mouse, Teclas Direccionales
Tutorial 6 - JTable - Movimiento Mouse, Teclas Direccionales
Registrar la
movimiento
del mouse y
las teclas
direccionales
en una tabla
(JTable)
Norman Salvador Aruz Lpez
-
Nota: El presente tutorial asume que usted ya sabe cmo crear, agregar
controles, formularios etc. a una aplicacin desde cero. Adems est
basado en el uso de tablas en Java (Tutorial 4 JTable - Factura) Si
usted no maneja estas temticas se recomienda primero realizar
los tutoriales anteriores, y practicar continuamente para dominio
de la sintaxis.
La idea es que cuando el usuario seleccione una fila o navegue por la tabla
con las teclas direccionales se obtengan los datos de la fila actualmente
seleccionadas. Esto lo haremos haciendo uso de eventos.
En este tutorial aprender:
1. Registrar el evento con el Mouse: (mouseClicked)
2. Registrar la seleccin de las teclas direccionales dentro de la
tabla (KeyPressed)
Para el siguiente tutorial haremos uso de la factura realizada en el
tutorial nmero 4, a la cual le agregaremos unos campos y debe
quedar como aparecen en la siguiente figura:
Campos
agregados a la
factura
para
este ejemplo
Control
JTextField
JTextField
JTextField
JTextField
JLabel
JLabel
JLabel
JLabel
Nombre
txtIdSelected
txtDescripcionSelected
txtCantidadSelected
txtPrecioUnitarioSelected
No es necesario
No es necesario
No es necesario
No es necesario
Estos campos servirn para capturar uno a uno los campos de la fila
seleccionada y en dependencia del tipo de dato los iremos almacenando, la
siguiente figura muestra uno a uno como capturar cada valor dentro de la
tabla:
Podr notar que para obtener un valor de la tabla se utiliza el nombre del
modelo interno y la funcin getValueAt(fila, columna), donde le pasamos
como nmero de fila la fila seleccionada desde el formulario en la vista de
diseo (TablaExterna.getSelectedRow()) y el nmero de columna donde se
encuentra el dato, en el caso del id es cero, porque recordemos que los
nmeros de columna empiezan de cero. As Id ser en columna cero,
Descripcin en columna 1 y as sucesivamente, Luego el campo
seleccionado se convierte a string usando el mtodo .toString, el
siguiente bloque muestra como capturar cada campo de la fila
seleccionada: