Documentos de Académico
Documentos de Profesional
Documentos de Cultura
package listas_dobles;
import java.text.DecimalFormat;
import java.awt.Font;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
String codigo;
String nombre;
String apellidos;
String sexo;
float sueldo;
Nodo sig;
Nodo ant;
{ codigo=cod;
nombre=nom;
apellidos=ape;
sexo=sex;
sueldo=suel;
sig=ant=null;
DefaultTableModel miModelo;
String [] [] data={}.
int num=0;
public listas_dobles(){
initComponents();
ini=fin=pFound=null;
miModelo=new DefaultTableModel(data,cabecera);
tblRegistros.setModel(miModelo);
@SuppressWarnings(“unchecked”)
Instrucciones de los métodos utilizados en el aplicativo
Float s;
Switch (ind)
{ vaciar_tabla() ;
Nodo aux=ini;
num=0;
while(aux !=null)
{ cod=aux.codigo;
nom=aux.nombre;
ape=aux.apellidos;
se=aux.sexo;
su = df2.format (aux.sueldo) ;
num++;;
Object[] fila={num,cod,nom,ape,se,su} ;
miModelo.addRow(fila);
aux=aux.sig;
} break;
{ vaciar_tabla();
Nodo aux=fin;
Num=0;
While(aux!=null)
{ cod=aux.codigo;
Nom=aux.nombre;
ape=aux.apellidos;
se=aux.sexo;
su = df2.format(aux.sueldo) ;
num++;
Object[] fila={num,cod,nom,ape,se,su} ;
miModelo.addRow(fila) ;
aux=aux.ant;
}break;
void vaciar_tabla()
int filas=tblRegistros.getRowCount();
for(int i=0;i<filas;i++)
miModelo.removeRow(0) ;
void Resumen ()
{ Nodo aux=ini;
float suma=0,mayor=-9999;
float s;
// Recorriendo la lista
while (aux!=null)
{ s=aux.sueldo;
if(s>mayor)
{ mayor=s;
Nom=aux.nombre+” “+aux.apellidos;
}
suma=suma+s;
aux=aux.sig;
txtNomMay.setText (nom);
txtAcumulado.setText(acum) ;
void Habilitar ()
{ btnActualizar.setEnabled(true) ;
btnEliminar.setEnabled(true) ;
btnGuardar.setEnabled(false) ;
void Deshabilitar()
{ btnActualizar.setEnabled(false) ;
btnEliminar.setEnabled(false) ;
btnGuardar.setEnabled(true) ;
void LimpiarEntradas()
{ txtCodigo.setText(“”) ;
txtNombre.setText(“”) ;
txtSueldo.setText(“”) ;
txtApellidos.setText(“”) ;
cbxSexo.setSelectedIndex(0) ;
txtCodigo.requestFocus() ;
}
Instrucciones en los metodos para las operaciones de la lista enlazada
{ Nodo pos=inicio;
pos=pos.sig;
return pos;
nuevo.sig=inicio;
if (inicio==null)
{ fin=nuevo;
fin.sig=null;
if(inicio!=null)
inicio.ant=nuevo;
inicio=nuevo;
void Eliminar ()
{Nodo actual;
boolean encontrado=false;
actual=ini;
{ encontrado=actual.codigo.equalsIgnoreCase(txtCodigo.getText(). Trim() );
If( !encontrado)
Actual=actual.sig;
if (actual !=null)
{ if (actual == ini)
if(actual.sig!=null)
actual.sig.ant=null;
{ actual.ant.sig=sig=actual.sig;
actual.sig.ant=actual.ant;
else
{ actual.ant.sig=null; // el ultimo
actual=null;
}
Instruccciones del boto guardar
String cod=txtCodigo.getText () ;
String suel=txtSueldo.getText() ;
ini=InsertaFinal(ini,cod,nom,ape,sex,Float.parseFloat(suel) ) ;
LimpiarEntradas() ;
VerDatos(1);
Resumen();
}
Instrucciones del boton Actualizar
pFound.codigo=txtCodigo.getText() ;
pFound.nombre=txtNombre.getText() .toUpperCase() ;
pFound.apellidos=txtApellidos.getText () . toUpperCase() ;
pFound.sexo=cbxSexo.getSelectedItem() . toString() ;
pFound.sueldo=Float.parseFloat(txtSueldo.getText() ) ;
LimpiarEntradas() ;
Deshabilitar() ;
VerDatos(1);
Resumen() ;
}
Instrucciones del boton consultar
If(cod.equalsIgnoreCase(“”) ) {
} else {
pFound=Buscar (ini,cod);
If(pFound!=null) {
txtNombre.setText(pFound.nombre) ;
txtApellidos.SetText (pFound.apellidos) ;
if (pFound.sexo.equalsIgnoreCase(“MASCULINO”) )
cbxSexo.setSelectedIndex(2) ;
else
cbxSexo.setSelectedIndex(1) ;
txtSueldo.setText(String.valueOf(pFound.sueldo) ) ;
Habilitar();
} else {
}
Instrucciones del botón eliminar
Eliminar() ;
LimpiarEntradas ();
VerDatos(1) ;
if(ini==null)
Deshabilitar () ;
Resumen() ;
LimpiarEntradas() ;
Deshabilitar() ;
VerDatos(1);
VerDatos(2) ;
Deshabilitar() ;