import java.awt.*;
import java.awt.event.*;
import java.rmi.*;
import java.net.MalformedURLException;
import java.net.UnknownHostException;
import java.applet.Applet;
public class AppletClient extends Applet
implements ActionListener {
// remote interface declaration
private CompteDistant accesDistant;
private Button Depot, Retrait;
private Label Solde;
private TextField saisieMontant;
private float MontantSolde;
//constructeur
public AppletClient(){
connexionServeur();
demandeSolde();
creeInterfaceGraphique();
}
public void connexionServeur(){
// recherche de nom dans les registres
try {
accesDistant=(CompteDistant)
Naming.lookup("//cuisuna.unige.ch/gestionCompteDistant");
}
catch (Exception e) {
System.out.println("Exeception "+ e.getMessage());
}
}
public void demandeSolde(){
try {
MontantSolde=accesDistant.litSolde();
}
catch (RemoteException e) {
System.out.println("Exception "+ e.getMessage());
}
}
public void creeInterfaceGraphique(){
setLayout( new BorderLayout());
Panel p=new Panel();
p.setLayout( new FlowLayout(FlowLayout.LEFT));
Solde=new Label(" Solde: ");
Solde.setText(" Solde: CHF "+MontantSolde);
add("North",Solde);
p.add(new Label("montant : "));
saisieMontant=new TextField(3);
p.add(saisieMontant);
add("Center", p);
p=new Panel();
Depot= new Button("Depot");
p.add(Depot);
Depot.addActionListener(this);
Retrait= new Button("Retrait");
p.add(Retrait);
Retrait.addActionListener(this);
add("South",p);
}
public void actionPerformed(ActionEvent e) {
String arg = e.getActionCommand();
float solde, montant;
try {
montant = (new Float(saisieMontant.getText()).floatValue());
}
catch (NumberFormatException ex) {
montant=0;
}
if ("Depot".equals(arg)) {
try {
solde= accesDistant.depot(montant);
Solde.setText(" Solde: CHF "+solde);
}
catch (RemoteException re) {
System.out.println("Exception "+ re.getMessage());
}
}
else if ("Retrait".equals(arg)) {
try {
solde= accesDistant.retrait(montant);
Solde.setText(" Solde: CHF "+solde);
}
catch (RemoteException re) {
System.out.println("Exception "+ re.getMessage());
}
}
}
public static void main(String args[]) {
try {
Frame f = new Frame("Compte Client");
AppletClient appletClient = new AppletClient();
appletClient.init();
appletClient.start();
f.add("Center", appletClient);
f.setSize(300, 300);
f.show();
}
catch (Exception e) {
System.out.println("Exception "+ e.getMessage());
}
}
}