JTABLE EN JDEVELOPER 12C
En este post vamos aprender a utilizar el JTABLE en el JDEVELOPER 12C, para ello utilizaremos una clase, un jframe y dos paquetes:
1. Código fuente de la clase: Cliente
package packClases;
public class Cliente {
//Atributos
private String codigo;
private String nombre;
private String paterno;
private String materno;
private String dni;
private String telefono;
//Metodos
public String getCodigo() {
return codigo;
}
public void setCodigo(String codigo) {
this.codigo = codigo;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getPaterno() {
return paterno;
}
public void setPaterno(String paterno) {
this.paterno = paterno;
}
public String getMaterno() {
return materno;
}
public void setMaterno(String materno) {
this.materno = materno;
}
public String getDni() {
return dni;
}
public void setDni(String dni) {
this.dni = dni;
}
public String getTelefono() {
return telefono;
}
public void setTelefono(String telefono) {
this.telefono = telefono;
}
}
2. Diseñe el siguiente formulario (JFRAME): guiCliente
3. Considere el siguiente código fuente en el formulario (JFRAME)
package packFormularios;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
import packClases.Cliente;
public class guiCliente extends javax.swing.JFrame {
//VAR GLOBAL PARA EL JTABLE
DefaultTableModel modelo = new DefaultTableModel();
//METODO PARA PERSONALIZAR COLUMNAS DE LA TABLA
private void columnas(){
modelo.addColumn("Codigo");
modelo.addColumn("Nombre");
modelo.addColumn("Paterno");
modelo.addColumn("Materno");
modelo.addColumn("Dni");
modelo.addColumn("Telefono");
this.tblClientes.setModel(modelo);
}
private void limpiar(){
this.txtCodigo.setText("");
this.txtNombre.setText("");
this.txtPaterno.setText("");
this.txtMaterno.setText("");
this.txtDni.setText("");
this.txtTelefono.setText("");
this.txtCodigo.requestFocus();
}
private void contarFilas(){
//contar las filas
int total = modelo.getRowCount();
this.lblCantidad.setText("Cantidad: " + total);
}
/** Creates new form guiClientes */
public guiClientes() {
initComponents();
columnas();
}
private void btnRegistrarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnRegistrarActionPerformed
//Instanciar
Clientes c = new Clientes();
c.setCodigo(this.txtCodigo.getText());
c.setNombre(this.txtNombre.getText());
c.setPaterno(this.txtPaterno.getText());
c.setMaterno(this.txtMaterno.getText());
c.setDni(this.txtDni.getText());
c.setTelefono(this.txtTelefono.getText());
//Registrar
String[] fila = new String[6];
fila[0] = c.getCodigo();
fila[1] = c.getNombre();
fila[2] = c.getPaterno();
fila[3] = c.getMaterno();
fila[4] = c.getDni();
fila[5] = c.getTelefono();
modelo.addRow(fila);
limpiar();
contarFilas();
}
private void btnBorrarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnBorrarActionPerformed
int fila;
fila = this.tblClientes.getSelectedRow();
if (fila >= 0){
modelo.removeRow(fila);
contarFilas();
}else
JOptionPane.showMessageDialog(null, "Seleccione una fila");
}
4. Ejecute la aplicación (tecla: F11)
1. Código fuente de la clase: Cliente
package packClases;
public class Cliente {
//Atributos
private String codigo;
private String nombre;
private String paterno;
private String materno;
private String dni;
private String telefono;
//Metodos
public String getCodigo() {
return codigo;
}
public void setCodigo(String codigo) {
this.codigo = codigo;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getPaterno() {
return paterno;
}
public void setPaterno(String paterno) {
this.paterno = paterno;
}
public String getMaterno() {
return materno;
}
public void setMaterno(String materno) {
this.materno = materno;
}
public String getDni() {
return dni;
}
public void setDni(String dni) {
this.dni = dni;
}
public String getTelefono() {
return telefono;
}
public void setTelefono(String telefono) {
this.telefono = telefono;
}
}
2. Diseñe el siguiente formulario (JFRAME): guiCliente
3. Considere el siguiente código fuente en el formulario (JFRAME)
package packFormularios;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
import packClases.Cliente;
public class guiCliente extends javax.swing.JFrame {
//VAR GLOBAL PARA EL JTABLE
DefaultTableModel modelo = new DefaultTableModel();
//METODO PARA PERSONALIZAR COLUMNAS DE LA TABLA
private void columnas(){
modelo.addColumn("Codigo");
modelo.addColumn("Nombre");
modelo.addColumn("Paterno");
modelo.addColumn("Materno");
modelo.addColumn("Dni");
modelo.addColumn("Telefono");
this.tblClientes.setModel(modelo);
}
private void limpiar(){
this.txtCodigo.setText("");
this.txtNombre.setText("");
this.txtPaterno.setText("");
this.txtMaterno.setText("");
this.txtDni.setText("");
this.txtTelefono.setText("");
this.txtCodigo.requestFocus();
}
private void contarFilas(){
//contar las filas
int total = modelo.getRowCount();
this.lblCantidad.setText("Cantidad: " + total);
}
/** Creates new form guiClientes */
public guiClientes() {
initComponents();
columnas();
}
private void btnRegistrarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnRegistrarActionPerformed
//Instanciar
Clientes c = new Clientes();
c.setCodigo(this.txtCodigo.getText());
c.setNombre(this.txtNombre.getText());
c.setPaterno(this.txtPaterno.getText());
c.setMaterno(this.txtMaterno.getText());
c.setDni(this.txtDni.getText());
c.setTelefono(this.txtTelefono.getText());
//Registrar
String[] fila = new String[6];
fila[0] = c.getCodigo();
fila[1] = c.getNombre();
fila[2] = c.getPaterno();
fila[3] = c.getMaterno();
fila[4] = c.getDni();
fila[5] = c.getTelefono();
modelo.addRow(fila);
limpiar();
contarFilas();
}
private void btnBorrarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnBorrarActionPerformed
int fila;
fila = this.tblClientes.getSelectedRow();
if (fila >= 0){
modelo.removeRow(fila);
contarFilas();
}else
JOptionPane.showMessageDialog(null, "Seleccione una fila");
}
4. Ejecute la aplicación (tecla: F11)
Comentarios