06 - prÁctica de lenguaje de programaciÓn - serializar ii
TRANSCRIPT
-
7/31/2019 06 - PRCTICA DE LENGUAJE DE PROGRAMACIN - Serializar II
1/4
-
7/31/2019 06 - PRCTICA DE LENGUAJE DE PROGRAMACIN - Serializar II
2/4
Prof. Simn Quispeluza M. 2/4 IESPP-Jos Jimnez Borja
3. Agregar los nuevos mtodos:
4. Ahora implementar el mtodo actionPerformed de los objetos oyentes ActionListener de cada uno de losbotones de comando:
a) Para Nuevo:
b) Para Eliminar:
c) Para Salir:
// Muestra en los componentes los datos de un determinado alumnopublicvoid mostrarRegistro(int reg) {
// Los registros van de [0 a lista.size()-1]if ( lista.isEmpty() ) return;// si lista vaca salirtxtNombres.setText(lista.get(reg).getNombres());txtApellidos.setText(lista.get(reg).getApellidos());dcFena.setDate( lista.get(reg).getFena() );
cboNivel.setSelectedIndex(lista.get(reg).getNivel());cboGrado.setSelectedIndex(lista.get(reg).getGrado());cboSeccion.setSelectedIndex(lista.get(reg).getSeccion());
lstApoderados.setSelectedIndex(lista.get(reg).getApoderado());lstApoderados.ensureIndexIsVisible(lista.get(reg).getApoderado());
bgSexo.clearSelection();if (lista.get(reg).getSexo() == true)
rbMasculino.setSelected(true);else
rbFemenino.setSelected(true);chkBecado.setSelected(lista.get(reg).getBecado());
// mostrar contador de RegistromostrarNroReg(reg);}
// Mostrar Nro de registro actual / Totalpublicvoid mostrarNroReg(int reg) {
lblReg.setText(String.valueOf(reg+1));lblTotal.setText(String.valueOf(lista.size()));
}
limpiarCampos();// mostrar nro registromostrarNroReg(lista.size());
if ( !lista.isEmpty() ) { // si lista no vacalista.remove(nroReg); // borrar elementonroReg = lista.size()-1; // ir al ltimo elementoif ( ! lista.isEmpty())
mostrarRegistro(nroReg);
else { // la lista est vacalimpiarCampos();mostrarNroReg(0);
}}
int rpta = JOptionPane.showConfirmDialog(frmDatos, "Guardar la lista de alumnos en disco?", "Pregunta",JOptionPane.YES_NO_CANCEL_OPTION);
if (rpta != JOptionPane.CANCEL_OPTION) { // si rpta diferente de cancelarif (rpta == JOptionPane.OK_OPTION) // si rpta es aceptar
guardarDisco();
System.exit(0);}
-
7/31/2019 06 - PRCTICA DE LENGUAJE DE PROGRAMACIN - Serializar II
3/4
Prof. Simn Quispeluza M. 3/4 IESPP-Jos Jimnez Borja
d) Para Agregar:
5. Tambin implementar el mtodo actionPerformed de los objetos oyentes ActionListener de los botones denavegacin:
a) Para btnAnterior:
b) Para btnSiguiente:
6. Modificar el constructorde la clase de tal forma que quede as:
Esto hace que se muestre la lista de alumnos al iniciar el programa.
7. Implementar el el siguiente cdigo para el evento windowClosing:
if ( validarCampos() == false )JOptionPane.showMessageDialog(frmDatos, "Faltan datos", "Mensaje", 1);
else { // datos completos y vlidos => agregar en la listalista.add(new Alumno(txtNombres.getText(),
txtApellidos.getText(),dcFena.getDate(),(rbMasculino.isSelected()?true : false),
cboNivel.getSelectedIndex(),cboGrado.getSelectedIndex(),cboSeccion.getSelectedIndex(),lstApoderados.getSelectedIndex(),chkBecado.isSelected()));
// mostrar ultimo alumnonroReg =lista.size()-1;mostrarRegistro(nroReg);
}
if (nroReg > 0 ) { // si no es el primer registronroReg--; // retroceder 1 registromostrarRegistro(nroReg);
}
if (nroReg < (lista.size() -1) ) { // si no es el ltimonroReg++; // avanzar 1 registromostrarRegistro(nroReg);
}
public FormularioAlumno() {initialize();leerDisco();if ( ! lista.isEmpty()) {
nroReg = lista.size()-1; // ultimo registromostrarRegistro(nroReg);
}}
btnSalir.doClick(); // llamar al botn Salir
-
7/31/2019 06 - PRCTICA DE LENGUAJE DE PROGRAMACIN - Serializar II
4/4
Prof. Simn Quispeluza M. 4/4 IESPP-Jos Jimnez Borja
8. Corregir posibles errores, eliminar mtodos no usados (como capturarCampos, actualizarCampos) y verificarla funcionalidad del programa. La apariencia final del mismo debe ser similar a:
Actividades:
Investiga sobre la clase ArrayList y sus mtodos ms importantes.
Resume los mtodos importantes que se utilizaron en esta prctica.