martes, 30 de abril de 2013

Llenar y eliminar filas una tabla en java.






En java una tabla es un objeto de la clase Jtable, que nos permite dibujar tablas con sus respectivas filas y columnas semejantes a una hoja de calculo.

Las operaciones básica que podemos hace una tabla son: insertar columnas, insertar filas y eliminar filas.

Una forma muy sencilla de hacer las operaciones anteriormente descritas es usando algo llamado modelo,que no es más que los datos implícitos que maneja la tabla, las operaciones o modificaciones que hagamos en el modelo, se verán reflejados (dibujados) en la tabla.

Primero creamos nuestra tabla

private JTable tabla;
//o tambien asi
private javax.swing.JTable tabla;


Luego unicializamos nuestra tabla.
tabla = JTable(); 
//o tambien asi
tabla = new javax.swing.JTable();

Creamos nuestro modelo
DefaultTableModel modelo;

Inicializamos
modelo = new DefaultTableModel();


Vinculamos nuestro modelo a la tabla
tabla.setModel(modelo);


Hosting

Listo, ahora es solo cuestión de hacer operaciones sobre nuestros datos usando nuestro modelo, empezamos por agregar las columnas que necesitaremos durante la ejecución de nuestro programa.

modelo.addColumn("Id");
modelo.addColumn("Primer nombre");
modelo.addColumn("Segundo nombre");
modelo.addColumn("Primer apellido");
modelo.addColumn("Segundo apellido");
modelo.addColumn("Sexo");
modelo.addColumn("Direccion");
modelo.addColumn("Telefono");

Para agregar filas, primero crearemos un arreglo del tipo Object para ir almacenando nuestros datos que posteriormente adjuntaremos a nuestro modelo.


Object []object = new Object[8];
object[0] = jTextFieldId.getText();
object[1] = jTextFieldPNombre.getText(); 
object[2] = jTextFieldSNombre.getText(); 
object[3] = jTextFieldPApellido.getText(); 
object[4] = jTextFieldSApellido.getText(); 
object[5] = jComboBoxSexo.getSelectedItem(); 
object[6] = jTextFieldDireccion.getText(); 
object[7] = jTextFieldTelefono.getText(); 
        
modelo.addRow(object);

Otra forma de agregar datos a nuestra tabla usando el modelo es haciendo uso del método setValueAt de nuestro modelo donde debemos conocer previamente la fila y la columna donde se insertará el dato, así:

modelo.setValueAt(dato, fila, columna);
     
Para eliminar una fila de la tabla, solo necesitamos saber por medio de su posición dentro de las demás  filas,para eso usamos el método getSelectedRow() de la clase Jtable, luego mandamos por parámetros dicha posición al método removeRow de nuestro modelo, así:

modelo.removeRow(fila);

Para finalizar sugiero que agreguen más funcionalidades al programa, como por ejemplo.
- Poder eliminar varias filas.
- No permitir campos vacíos.
- No permitir id repetidas.

No olvides dejar tus comentarios.





Entrada destacada

Matriz de adyacencia para un grafo

"La matriz de adyacencia es una matriz cuadrada que se utiliza como una forma de representar relaciones binarias."; aunque pa...