SlideShare una empresa de Scribd logo
1 de 7
Descargar para leer sin conexión
Objeto Jtable.
Aplicando el objeto jtable en un caso específico.
Recuerda asignar un nombre de variable a cada uno de los objetos, para efectos del ejercicio
de este proyecto se ha asignado los siguientes nombres de variable a los objetos, ver cuadros
de color negro.
Codificación. Lo que más nos gusta hacer.
package clasesmetodos;
import javax.swing.JOptionPane;
import javax.swing.table.*;
import javax.swing.*;
jtxtalumno
public class Jtable extends javax.swing.JFrame { //clase principal
double nbI, nbII, nproyecto, promedio;
String estado; int total;
DefaultTableModel dm;
DefaultTableModel contenedor=new DefaultTableModel();DefaultTableModel dm;
DefaultTableModel contenedor=new DefaultTableModel();
public Jtable() {
initComponents();
String titulos[]={"Apellidos y Nombres", "I Unidad", "II Unidad",
“Proyecto","Promedio","Turno"};
contenedor.setColumnIdentifiers(titulos);
this.jtable.setModel(contenedor);
this.setLocationRelativeTo(this);
}
public void desactivar()//método para desactivar los objetos
{
this.jtxtalumno.setEnabled(false);
this.jtxtunidadI.setEnabled(false);
this.jtxtUnidadII.setEnabled(false);
this.jtxtProyecto.setEnabled(false);
this.jcboSeccion.setEnabled(false);
}
public void activar()//método para activar los objetos
{
this.jtxtalumno.setEnabled(true);
this.jtxtunidadI.setEnabled(true);
this.jtxtUnidadII.setEnabled(true);
this.jtxtProyecto.setEnabled(true);
this.jcboSeccion.setEnabled(true);
}
Declaración de
variables y
definición de
modelos para
trabajar con la
tabla.
Inicializamos
los títulos de la
tabla en el
constructor de
la clase.
Método que
me permite
desactivar los
objetos.
Método que
me permite
activar los
objetos.
public void limpiar()//método para limpiar e inicializar los objetos
{
this.jtxtalumno.setText("");
this.jtxtunidadI.setText("");
this.jtxtUnidadII.setText("");
this.jtxtProyecto.setText("");
this.jcboSeccion.setSelectedIndex(0);
}
private void jbtnAgregarActionPerformed(java.awt.event.ActionEvent evt) {
String datos[]=new String[7]
boolean verificardatos;
nbI=Double.parseDouble(this.jtxtunidadI.getText());
nbII=Double.parseDouble(this.jtxtUnidadII.getText());
nproyecto=Double.parseDouble(this.jtxtProyecto.getText());
verificardatos=this.jtxtalumno.getText().equals("")||this.jtxtUnidadII.
getText().equals("") ||this.jtxtProyecto.getText().equals("");
verificardatos=verificardatos||this.jcboSeccion.getSelectedIndex()==0;
if(!verificardatos)
{
promedio=(nbI+nbII+nproyecto)/3;
if(promedio>=11){
estado="Aprobado";
}else{
estado="Desaprobado";
}
datos[0]=this.jtxtalumno.getText();
datos[1]=(String)this.jcboSeccion.getSelectedItem();
datos[2]=this.jtxtunidadI.getText();
datos[3]=this.jtxtUnidadII.getText();
datos[4]=this.jtxtProyecto.getText();
datos[5]=String.valueOf(promedio);
datos[5]=String.valueOf(estado);
contenedor.addRow(datos);
}else{
JOptionPane.showMessageDialog(null, "Falta algún Dato");
}
total=this.jtable.getRowCount();
this.jtxtCantEstud.setText(String.valueOf(total));
limpiar();//limpiamos las cajas de texto e inicializamos el combo al índex 0
desactivar();//desactivamos los objetos para obligar al usuario a presionar el botón nuevo
para ingresar nuevos valores
this.jbtnAgregar.setEnabled(false);
this.jbtnNuevo.setEnabled(true);
this.jbtnEliminar.setEnabled(true);
this.jbtnLimTabla.setEnabled(true);
}
Método que
me permite
limpiar los
objetos y
reinicializar la
posición del
combo
Programación
del botón
agregar un
elemento a la
tabla.
private void jbtnEliminarActionPerformed(java.awt.event.ActionEvent evt) {
int fila;
fila=jtable.getSelectedRow();
if(fila>=0)
{
contenedor.removeRow(fila);
}else{
JOptionPane.showMessageDialog(null, "Selecciona una fila para eliminar");
}
total=contenedor.getRowCount();
this.jtxtCantEstud.setText(String.valueOf(total));
}
private void jbtnLimTablaActionPerformed(java.awt.event.ActionEvent evt) {
int filas;
try{
filas=contenedor.getRowCount();
for (int i = 0;filas>i; i++) {
contenedor.removeRow(0);
}
} catch(Exception e) {
JOptionPane.showMessageDialog(null, "Error al limpiar la tabla");
}
}
private void jbtnNuevoActionPerformed(java.awt.event.ActionEvent evt) {
activar();
limpiar();
this.jbtnAgregar.setEnabled(true);
this.jbtnNuevo.setEnabled(false);
this.jbtnEliminar.setEnabled(false);
this.jbtnLimTabla.setEnabled(false);
// TODO add your handling code here:
}
//Método que permite manipular la tabla para realizar la búsqueda.
private void buscar(String consulta, JTable jtable){
dm = (DefaultTableModel) jtable.getModel();//recuerda que la variable dm se creó en la parte
superior de la clase.
TableRowSorter<DefaultTableModel> tr = new TableRowSorter<>(dm);
jtable.setRowSorter(tr);
tr.setRowFilter(RowFilter.regexFilter(consulta));
//private TableRowSorter trsFiltro;
}
Programación
del botón
eliminar, para
eliminar un
elemento de la
tabla.
Programación
del botón
limpiar Tabla,
para limpiar
todos los
elemento de la
tabla.
Programación
del botón
nuevo, para
limpiar todos
los elementos
de ingreso de
datos y activar
o desactivar
los objetos.
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
buscar(this.jtxtBuscar.getText(), this.jtable); //invocamos al método.
}
private void formWindowActivated(java.awt.event.WindowEvent evt) {
limpiar();
desactivar();
this.jbtnAgregar.setEnabled(false);
this.jbtnNuevo.setEnabled(true);
}
Bibliografía
chuwiki. (2015). Obtenido de
http://chuwiki.chuidiang.org/index.php?title=JTable:_Ordenar_y_filtrar_filas
Merino, F. (2016). linuxgx. Obtenido de https://linuxgx.blogspot.pe/2016/08/filtrar-datos-de-
un-jtable-partir-de.html
Código que se
ejecutará
cuando se
active el
formulario.

Más contenido relacionado

La actualidad más candente

3 desarollo manejo datos capitulo 4 -02 aplicaciones colecciones
3 desarollo manejo datos capitulo 4 -02 aplicaciones colecciones3 desarollo manejo datos capitulo 4 -02 aplicaciones colecciones
3 desarollo manejo datos capitulo 4 -02 aplicaciones coleccionesluis freddy
 
Manejo de Eventos en java
Manejo de Eventos en javaManejo de Eventos en java
Manejo de Eventos en javaSilvana Vargas
 
Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)Ronald Cuello
 
Java Persistence Api (Jpa)
Java Persistence Api (Jpa)Java Persistence Api (Jpa)
Java Persistence Api (Jpa)Ronald Cuello
 
Presentación 13 Paso por referencia
Presentación 13 Paso por referenciaPresentación 13 Paso por referencia
Presentación 13 Paso por referenciaAndres Bedoya Tobon
 
Codigo De Las Clases Del Proyecto
Codigo De Las Clases Del ProyectoCodigo De Las Clases Del Proyecto
Codigo De Las Clases Del Proyectonahun1385
 

La actualidad más candente (7)

3 desarollo manejo datos capitulo 4 -02 aplicaciones colecciones
3 desarollo manejo datos capitulo 4 -02 aplicaciones colecciones3 desarollo manejo datos capitulo 4 -02 aplicaciones colecciones
3 desarollo manejo datos capitulo 4 -02 aplicaciones colecciones
 
Manejo de Eventos en java
Manejo de Eventos en javaManejo de Eventos en java
Manejo de Eventos en java
 
Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)
 
Java Persistence Api (Jpa)
Java Persistence Api (Jpa)Java Persistence Api (Jpa)
Java Persistence Api (Jpa)
 
Presentación 13 Paso por referencia
Presentación 13 Paso por referenciaPresentación 13 Paso por referencia
Presentación 13 Paso por referencia
 
Codigo De Las Clases Del Proyecto
Codigo De Las Clases Del ProyectoCodigo De Las Clases Del Proyecto
Codigo De Las Clases Del Proyecto
 
Presentación 09 Cajas blanca
Presentación 09 Cajas blancaPresentación 09 Cajas blanca
Presentación 09 Cajas blanca
 

Similar a Objeto jtable manipulación de datos multidimensionales

Similar a Objeto jtable manipulación de datos multidimensionales (20)

Tips componentes swing_v5
Tips componentes swing_v5Tips componentes swing_v5
Tips componentes swing_v5
 
Ejemplo j internalframe_gine
Ejemplo j internalframe_gineEjemplo j internalframe_gine
Ejemplo j internalframe_gine
 
Semana 5 Java Swing
Semana 5   Java SwingSemana 5   Java Swing
Semana 5 Java Swing
 
Control de JTable
Control de JTableControl de JTable
Control de JTable
 
Presentación1
Presentación1Presentación1
Presentación1
 
Java::Acceso a Bases de Datos
Java::Acceso a Bases de DatosJava::Acceso a Bases de Datos
Java::Acceso a Bases de Datos
 
Taller de repaso de metodos y arreglos
Taller de repaso de metodos y arreglosTaller de repaso de metodos y arreglos
Taller de repaso de metodos y arreglos
 
Programación i
Programación iProgramación i
Programación i
 
Control jtable con base de datos
Control jtable con base de datosControl jtable con base de datos
Control jtable con base de datos
 
Swing
SwingSwing
Swing
 
Presentacion
PresentacionPresentacion
Presentacion
 
Manejo de eventos en java
Manejo de eventos en javaManejo de eventos en java
Manejo de eventos en java
 
Curso java desde cero nivel i - modulo v
Curso java desde cero   nivel i - modulo vCurso java desde cero   nivel i - modulo v
Curso java desde cero nivel i - modulo v
 
U5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdfU5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdf
 
Codigo ejercicios
Codigo ejerciciosCodigo ejercicios
Codigo ejercicios
 
Curso java 6
Curso java 6Curso java 6
Curso java 6
 
3 desarollo manejo datos capitulo 3 -01 arreglo objetos
3 desarollo manejo datos capitulo 3 -01 arreglo objetos3 desarollo manejo datos capitulo 3 -01 arreglo objetos
3 desarollo manejo datos capitulo 3 -01 arreglo objetos
 
Programa arreglos 2
Programa arreglos 2Programa arreglos 2
Programa arreglos 2
 
Guia5 java
Guia5 javaGuia5 java
Guia5 java
 
Tema 2 objetos_jlabel_jtextfield_jbutton
Tema 2 objetos_jlabel_jtextfield_jbuttonTema 2 objetos_jlabel_jtextfield_jbutton
Tema 2 objetos_jlabel_jtextfield_jbutton
 

Más de Levi Ronald Castro Fernández

Más de Levi Ronald Castro Fernández (16)

Ínstitucionalidad democrática- grupal (1).pptx
Ínstitucionalidad democrática- grupal (1).pptxÍnstitucionalidad democrática- grupal (1).pptx
Ínstitucionalidad democrática- grupal (1).pptx
 
Proyecto de innovacion aula virtual con moodle
Proyecto de innovacion aula virtual con moodleProyecto de innovacion aula virtual con moodle
Proyecto de innovacion aula virtual con moodle
 
Guía de usuario docente aula virtual
Guía de usuario docente   aula virtualGuía de usuario docente   aula virtual
Guía de usuario docente aula virtual
 
Tecnologías de la Información y Comunicación
Tecnologías de la Información y ComunicaciónTecnologías de la Información y Comunicación
Tecnologías de la Información y Comunicación
 
CALIDAD DE VIDA Y LA PROBLEMÁTICA AMBIENTAL
CALIDAD DE VIDA Y LA PROBLEMÁTICA AMBIENTALCALIDAD DE VIDA Y LA PROBLEMÁTICA AMBIENTAL
CALIDAD DE VIDA Y LA PROBLEMÁTICA AMBIENTAL
 
Comercio electrónico
Comercio electrónico Comercio electrónico
Comercio electrónico
 
Coreldraw x6
Coreldraw x6Coreldraw x6
Coreldraw x6
 
Comprimir fotos y referencias b ibliogràficas
Comprimir fotos y referencias b ibliogràficasComprimir fotos y referencias b ibliogràficas
Comprimir fotos y referencias b ibliogràficas
 
Crear programa mata virus
Crear programa mata virusCrear programa mata virus
Crear programa mata virus
 
Proyecto de innovación Laptop XO en las aulas
Proyecto de innovación Laptop XO en las aulasProyecto de innovación Laptop XO en las aulas
Proyecto de innovación Laptop XO en las aulas
 
Mostrar archivos ocultos provocado por virus
Mostrar archivos ocultos provocado por virusMostrar archivos ocultos provocado por virus
Mostrar archivos ocultos provocado por virus
 
Las innovaciones pedagógicas
Las innovaciones pedagógicasLas innovaciones pedagógicas
Las innovaciones pedagógicas
 
Proyecto de innovación
Proyecto  de innovaciónProyecto  de innovación
Proyecto de innovación
 
Guía de estudio de Microsfot Word 2010
Guía de estudio de Microsfot Word 2010Guía de estudio de Microsfot Word 2010
Guía de estudio de Microsfot Word 2010
 
Base de datos con microsoft acces 2007
Base de datos con microsoft acces 2007Base de datos con microsoft acces 2007
Base de datos con microsoft acces 2007
 
Elaboración de una tarjeta en microsoft word
Elaboración de una tarjeta en microsoft wordElaboración de una tarjeta en microsoft word
Elaboración de una tarjeta en microsoft word
 

Último

HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).
HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).
HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).hebegris04
 
Amor o egoísmo, esa es la cuestión por definir.pdf
Amor o egoísmo, esa es la cuestión por definir.pdfAmor o egoísmo, esa es la cuestión por definir.pdf
Amor o egoísmo, esa es la cuestión por definir.pdfAlejandrino Halire Ccahuana
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...YobanaZevallosSantil1
 
Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.monthuerta17
 
ENSEÑAR ACUIDAR EL MEDIO AMBIENTE ES ENSEÑAR A VALORAR LA VIDA.
ENSEÑAR ACUIDAR  EL MEDIO AMBIENTE ES ENSEÑAR A VALORAR LA VIDA.ENSEÑAR ACUIDAR  EL MEDIO AMBIENTE ES ENSEÑAR A VALORAR LA VIDA.
ENSEÑAR ACUIDAR EL MEDIO AMBIENTE ES ENSEÑAR A VALORAR LA VIDA.karlazoegarciagarcia
 
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE 9-4-24 (1).docx
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE     9-4-24 (1).docx4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE     9-4-24 (1).docx
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE 9-4-24 (1).docxMagalyDacostaPea
 
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJODIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJOLeninCariMogrovejo
 
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbalPPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbalRosarioChoque3
 
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADOCUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADOEveliaHernandez8
 
5° Proyecto 13 Cuadernillo para proyectos
5° Proyecto 13 Cuadernillo para proyectos5° Proyecto 13 Cuadernillo para proyectos
5° Proyecto 13 Cuadernillo para proyectosTrishGutirrez
 
Actividades eclipse solar 2024 Educacion
Actividades eclipse solar 2024 EducacionActividades eclipse solar 2024 Educacion
Actividades eclipse solar 2024 Educacionviviantorres91
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Rosabel UA
 
PRIMER GRADO SOY LECTOR PART1- MD EDUCATIVO.pdf
PRIMER GRADO SOY LECTOR PART1- MD  EDUCATIVO.pdfPRIMER GRADO SOY LECTOR PART1- MD  EDUCATIVO.pdf
PRIMER GRADO SOY LECTOR PART1- MD EDUCATIVO.pdfGabrieldeJesusLopezG
 
historieta materia de ecologías producto
historieta materia de ecologías productohistorieta materia de ecologías producto
historieta materia de ecologías productommartinezmarquez30
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 

Último (20)

HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).
HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).
HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).
 
Amor o egoísmo, esa es la cuestión por definir.pdf
Amor o egoísmo, esa es la cuestión por definir.pdfAmor o egoísmo, esa es la cuestión por definir.pdf
Amor o egoísmo, esa es la cuestión por definir.pdf
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
 
Sesión ¿Amor o egoísmo? Esa es la cuestión
Sesión  ¿Amor o egoísmo? Esa es la cuestiónSesión  ¿Amor o egoísmo? Esa es la cuestión
Sesión ¿Amor o egoísmo? Esa es la cuestión
 
Unidad 2 | Teorías de la Comunicación | MCDIU
Unidad 2 | Teorías de la Comunicación | MCDIUUnidad 2 | Teorías de la Comunicación | MCDIU
Unidad 2 | Teorías de la Comunicación | MCDIU
 
Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.
 
ENSEÑAR ACUIDAR EL MEDIO AMBIENTE ES ENSEÑAR A VALORAR LA VIDA.
ENSEÑAR ACUIDAR  EL MEDIO AMBIENTE ES ENSEÑAR A VALORAR LA VIDA.ENSEÑAR ACUIDAR  EL MEDIO AMBIENTE ES ENSEÑAR A VALORAR LA VIDA.
ENSEÑAR ACUIDAR EL MEDIO AMBIENTE ES ENSEÑAR A VALORAR LA VIDA.
 
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE 9-4-24 (1).docx
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE     9-4-24 (1).docx4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE     9-4-24 (1).docx
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE 9-4-24 (1).docx
 
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJODIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
 
Acuerdo segundo periodo - Grado Noveno.pptx
Acuerdo segundo periodo - Grado Noveno.pptxAcuerdo segundo periodo - Grado Noveno.pptx
Acuerdo segundo periodo - Grado Noveno.pptx
 
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbalPPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
 
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADOCUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
 
5° Proyecto 13 Cuadernillo para proyectos
5° Proyecto 13 Cuadernillo para proyectos5° Proyecto 13 Cuadernillo para proyectos
5° Proyecto 13 Cuadernillo para proyectos
 
Actividades eclipse solar 2024 Educacion
Actividades eclipse solar 2024 EducacionActividades eclipse solar 2024 Educacion
Actividades eclipse solar 2024 Educacion
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
PRIMER GRADO SOY LECTOR PART1- MD EDUCATIVO.pdf
PRIMER GRADO SOY LECTOR PART1- MD  EDUCATIVO.pdfPRIMER GRADO SOY LECTOR PART1- MD  EDUCATIVO.pdf
PRIMER GRADO SOY LECTOR PART1- MD EDUCATIVO.pdf
 
historieta materia de ecologías producto
historieta materia de ecologías productohistorieta materia de ecologías producto
historieta materia de ecologías producto
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 

Objeto jtable manipulación de datos multidimensionales

  • 2.
  • 3. Aplicando el objeto jtable en un caso específico. Recuerda asignar un nombre de variable a cada uno de los objetos, para efectos del ejercicio de este proyecto se ha asignado los siguientes nombres de variable a los objetos, ver cuadros de color negro. Codificación. Lo que más nos gusta hacer. package clasesmetodos; import javax.swing.JOptionPane; import javax.swing.table.*; import javax.swing.*; jtxtalumno
  • 4. public class Jtable extends javax.swing.JFrame { //clase principal double nbI, nbII, nproyecto, promedio; String estado; int total; DefaultTableModel dm; DefaultTableModel contenedor=new DefaultTableModel();DefaultTableModel dm; DefaultTableModel contenedor=new DefaultTableModel(); public Jtable() { initComponents(); String titulos[]={"Apellidos y Nombres", "I Unidad", "II Unidad", “Proyecto","Promedio","Turno"}; contenedor.setColumnIdentifiers(titulos); this.jtable.setModel(contenedor); this.setLocationRelativeTo(this); } public void desactivar()//método para desactivar los objetos { this.jtxtalumno.setEnabled(false); this.jtxtunidadI.setEnabled(false); this.jtxtUnidadII.setEnabled(false); this.jtxtProyecto.setEnabled(false); this.jcboSeccion.setEnabled(false); } public void activar()//método para activar los objetos { this.jtxtalumno.setEnabled(true); this.jtxtunidadI.setEnabled(true); this.jtxtUnidadII.setEnabled(true); this.jtxtProyecto.setEnabled(true); this.jcboSeccion.setEnabled(true); } Declaración de variables y definición de modelos para trabajar con la tabla. Inicializamos los títulos de la tabla en el constructor de la clase. Método que me permite desactivar los objetos. Método que me permite activar los objetos.
  • 5. public void limpiar()//método para limpiar e inicializar los objetos { this.jtxtalumno.setText(""); this.jtxtunidadI.setText(""); this.jtxtUnidadII.setText(""); this.jtxtProyecto.setText(""); this.jcboSeccion.setSelectedIndex(0); } private void jbtnAgregarActionPerformed(java.awt.event.ActionEvent evt) { String datos[]=new String[7] boolean verificardatos; nbI=Double.parseDouble(this.jtxtunidadI.getText()); nbII=Double.parseDouble(this.jtxtUnidadII.getText()); nproyecto=Double.parseDouble(this.jtxtProyecto.getText()); verificardatos=this.jtxtalumno.getText().equals("")||this.jtxtUnidadII. getText().equals("") ||this.jtxtProyecto.getText().equals(""); verificardatos=verificardatos||this.jcboSeccion.getSelectedIndex()==0; if(!verificardatos) { promedio=(nbI+nbII+nproyecto)/3; if(promedio>=11){ estado="Aprobado"; }else{ estado="Desaprobado"; } datos[0]=this.jtxtalumno.getText(); datos[1]=(String)this.jcboSeccion.getSelectedItem(); datos[2]=this.jtxtunidadI.getText(); datos[3]=this.jtxtUnidadII.getText(); datos[4]=this.jtxtProyecto.getText(); datos[5]=String.valueOf(promedio); datos[5]=String.valueOf(estado); contenedor.addRow(datos); }else{ JOptionPane.showMessageDialog(null, "Falta algún Dato"); } total=this.jtable.getRowCount(); this.jtxtCantEstud.setText(String.valueOf(total)); limpiar();//limpiamos las cajas de texto e inicializamos el combo al índex 0 desactivar();//desactivamos los objetos para obligar al usuario a presionar el botón nuevo para ingresar nuevos valores this.jbtnAgregar.setEnabled(false); this.jbtnNuevo.setEnabled(true); this.jbtnEliminar.setEnabled(true); this.jbtnLimTabla.setEnabled(true); } Método que me permite limpiar los objetos y reinicializar la posición del combo Programación del botón agregar un elemento a la tabla.
  • 6. private void jbtnEliminarActionPerformed(java.awt.event.ActionEvent evt) { int fila; fila=jtable.getSelectedRow(); if(fila>=0) { contenedor.removeRow(fila); }else{ JOptionPane.showMessageDialog(null, "Selecciona una fila para eliminar"); } total=contenedor.getRowCount(); this.jtxtCantEstud.setText(String.valueOf(total)); } private void jbtnLimTablaActionPerformed(java.awt.event.ActionEvent evt) { int filas; try{ filas=contenedor.getRowCount(); for (int i = 0;filas>i; i++) { contenedor.removeRow(0); } } catch(Exception e) { JOptionPane.showMessageDialog(null, "Error al limpiar la tabla"); } } private void jbtnNuevoActionPerformed(java.awt.event.ActionEvent evt) { activar(); limpiar(); this.jbtnAgregar.setEnabled(true); this.jbtnNuevo.setEnabled(false); this.jbtnEliminar.setEnabled(false); this.jbtnLimTabla.setEnabled(false); // TODO add your handling code here: } //Método que permite manipular la tabla para realizar la búsqueda. private void buscar(String consulta, JTable jtable){ dm = (DefaultTableModel) jtable.getModel();//recuerda que la variable dm se creó en la parte superior de la clase. TableRowSorter<DefaultTableModel> tr = new TableRowSorter<>(dm); jtable.setRowSorter(tr); tr.setRowFilter(RowFilter.regexFilter(consulta)); //private TableRowSorter trsFiltro; } Programación del botón eliminar, para eliminar un elemento de la tabla. Programación del botón limpiar Tabla, para limpiar todos los elemento de la tabla. Programación del botón nuevo, para limpiar todos los elementos de ingreso de datos y activar o desactivar los objetos.
  • 7. private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) { buscar(this.jtxtBuscar.getText(), this.jtable); //invocamos al método. } private void formWindowActivated(java.awt.event.WindowEvent evt) { limpiar(); desactivar(); this.jbtnAgregar.setEnabled(false); this.jbtnNuevo.setEnabled(true); } Bibliografía chuwiki. (2015). Obtenido de http://chuwiki.chuidiang.org/index.php?title=JTable:_Ordenar_y_filtrar_filas Merino, F. (2016). linuxgx. Obtenido de https://linuxgx.blogspot.pe/2016/08/filtrar-datos-de- un-jtable-partir-de.html Código que se ejecutará cuando se active el formulario.