martes, 7 de diciembre de 2010

ejercicio4

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class PagarCliente extends JFrame implements ActionListener
{

JLabel idLbl, nombreLbl, saldoALbl, pagoLbl, saldoNLbl;
JTextField idTxt, nombreTxt, saldoATxt, pagoTxt, saldoNTxt;
JButton buscarBtn, pagarBtn , guardarBtn, salirBtn;

public PagarCliente()
{
super("Clientes");
setLayout(new GridLayout(7,2));


idLbl=new JLabel("ID");
add(idLbl);
idTxt=new JTextField(10);
add(idTxt);

nombreLbl=new JLabel("NOMBRE");
add(nombreLbl);
nombreTxt=new JTextField(10);
add(nombreTxt);

saldoALbl=new JLabel("SALDO ANTERIOR");
add(saldoALbl);
saldoATxt=new JTextField(10);
add(saldoATxt);

pagoLbl=new JLabel("PAGO");
add(pagoLbl);
pagoTxt=new JTextField(10);
add(pagoTxt);

saldoNLbl=new JLabel("SALDO NUEVO");
add(saldoNLbl);
saldoNTxt=new JTextField(10);
add(saldoNTxt);


buscarBtn=new JButton("buscar");
buscarBtn.addActionListener(this);
add(buscarBtn);

pagarBtn=new JButton("pagar");
pagarBtn.addActionListener(this);
add(pagarBtn);

guardarBtn=new JButton("guardar");
guardarBtn.addActionListener(this);
add(guardarBtn);

salirBtn=new JButton("salir");
salirBtn.addActionListener(this);
add(salirBtn);

setSize(300,400);
setVisible(true);
}


public void actionPerformed(ActionEvent e)
{
if(e.getSource()==buscarBtn)
{
buscar();
}

if(e.getSource()==pagarBtn)
{
pagar();
}

if(e.getSource()==guardarBtn)
{
guardar();
}

if(e.getSource()==salirBtn)
{
dispose();
}
}

public void buscar()
{
//verifica que el id existe
int p=ArchivoTexto.posInfo(idTxt.getText(),0,"cliente.txt");
if(p==-1)
{
JOptionPane.showMessageDialog(null,"Id no existe");
return;
}
//trae informacion del archivo
String registro[]=ArchivoTexto.traeRegistro(p,"cliente.txt");
//asigna la informacion al formulario
nombreTxt.setText(registro[1]);
saldoATxt.setText(registro[2]);
pagoTxt.setText("0");
saldoNTxt.setText(registro[2]);
}

public void pagar()
{
//verifica que el id existe
int p=ArchivoTexto.posInfo(idTxt.getText(),0,"cliente.txt");
if(p==-1)
{
JOptionPane.showMessageDialog(null,"Id no existe");
return;
}
//calcula los valores
double saldoA=aDecimal(saldoATxt.getText());
double pago=aDecimal(pagoTxt.getText());
double saldoN=saldoA-pago;
saldoNTxt.setText(saldoN+"");
}

public void guardar()
{
//verificar que el codigo existe
int pos=ArchivoTexto.posInfo(idTxt.getText(),0,"cliente.txt");
if(pos==-1)
{
JOptionPane.showMessageDialog(null,"ID no existe");
return;
}

//ahora que no existe lo agregamos al final
String registro=idTxt.getText()+";"+nombreTxt.getText()+";"+saldoNTxt.getText();
ArchivoTexto.guardaPos(registro,pos,"cliente.txt");
limpiarCampos();
}

public double aDecimal(String msg)
{
double x=0;
try
{
x=Double.parseDouble(msg);
}
catch(Exception e)
{
x=0;
}
return x;
}

public void limpiarCampos()
{
idTxt.setText("");
nombreTxt.setText("");
saldoATxt.setText("");
pagoTxt.setText("");
saldoNTxt.setText("");
}
}

No hay comentarios:

Publicar un comentario