La mejor forma de crear tablas en Java son las de la librería SWING, o lo que conocemos comúnmente como un "jTable". Para crear esto la sintaxis es la de siempre:
jTable tabla = new jTable();
En donde:
- "tabla" es el nombre que le daremos a nuestro objeto o tabla que estamos creando.
- jTable es el API que estamos cargando de la librería SWING.
Aunque esta no es la mejor forma de crear una tabla, ya que si vamos a trabajar con una aplicación en donde se desea crear, borrar o modificar registros o campos de esa tabla, lo mejor es crear modelo de tabla o lo que también se conoce como "DefaultTableModel".
Para instancear nuestra tabla al modelo de tablas, lo hacemos de la siguiente manera:
DefaultTableModel modelo = new DefaultTableModel(); //Creamos el modelo
JTable tabla = new JTable(modelo); //Lo instanceamos en la tabla
Si la cantidad de datos se excede y no creamos un "scroll" (barra a mano derecha con las flechítas de arriba y abajo) no podremos ver el resto de los datos, para crear un "scroll" y añadirlo a nuestra tabla hacemos lo siguiente:
JScrollPane scroll = new JScrollPane(tabla);
De esta forma ya hemos creado nuestra tabla y de esta forma sera mas fácil modificar datos en ella, los comando para ello son los siguientes:
datos.addColumn ("Nombre columna");
datos.addRow (datos_fila); //Crea una nueva fila
datos.removeRow (fila); //Borra una fila
datos.setValueAt (dato, fila, columna); //Modifica un dato en la celda indicada
En donde:
- "Nombre_Columna" es el nombre que le daremos a la columna, para agregar múltiples columnas lo mejor sería hacerlo con un arreglo
- "datos_fila" serán los datos que agregaremos a la fila que hemos creado, la forma mas fácil de introducir datos a las filas es con arreglos.
- dato es el valor a insertar en el campo o celda.
- fila es el número de la fila, comenzando desde 0.
- columna es el número de la columna, comenzando desde 0.
Dicho esto, observemos este ejemplo en el cual se añaden los datos a la tabla mediante arreglos, aunque no están implementadas las opciones de crear, borrar o modificar datos, podemos implementarlas sin problemas.
import javax.swing.*; import java.io.*; import java.awt.*; public class Tabla extends Frame { Object[][] filas= {{"JAJA", "LALA", "TATA", new Integer(5), new Boolean(false)}, {"JEJE", "LELE", "TETE", new Integer(3), new Boolean(true)}, {"JIJI", "LILI", "TITI", new Integer(2), new Boolean(false)}, {"JOJO", "LOLO", "TOTO", new Integer(7), new Boolean(true)}, {"JUJU", "LULU", "TUTU", new Integer(4), new Boolean(false)}}; String[] columnas = {"Nombre", "Apellido", "Direccion", "Edad", "Soltero(a)"}; public Tabla() { JTable tabla = new JTable (filas,columnas); JScrollPane scroll = new JScrollPane(tabla); add(tabla); } public static void main (String [] args) throws IOException { Tabla contenedor=new Tabla(); contenedor.pack(); contenedor.setVisible(true); } }
Otra forma de agregar los datos es haciendo "JTable table = new JTable(datos, columnas)", con esto se agregan los datos a la tabla en forma de "FILAS x COLUMNAS".
También hay que aclarar que todo esto debe estar dentro de un contenedor, bien ya sea un "jPane" o un "jFrame", para poder visualizar el objeto (la tabla).
Recibe notificaciones por correo