Bonjour,
En ce moment je programme un distributeur de billets en java eclipse, j'ai ma classe compte, ma classe main , et ma classe distributeur(interface),Voila mon code
public class Distributeur extends JFrame {
private JPanel container = new JPanel();
String[] tab_string = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "0","Voir le Solde", "Retrait","Valider","Langues","c"};
JButton[] tab_button = new JButton[tab_string.length];
private JLabel ecran = new JLabel();
private Dimension dim = new Dimension(50, 40);
private Dimension dim2 = new Dimension(450,30 );
private double chiffre1;
private boolean clicOperateur = false, update = false;
private String operateur = "";
public Distributeur(){
this.setSize(400, 350);
this.setTitle("Distributeur de billets");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setContentPane(new Panneau());
Font police = new Font("Arial", Font.BOLD, 12);
ecran = new JLabel("0");
ecran.setFont(police);
ecran.setHorizontalAlignment(JLabel.RIGHT);
ecran.setPreferredSize(new Dimension(220, 20));
JPanel operateur = new JPanel();
operateur.setPreferredSize(new Dimension(80, 225));
JPanel chiffre = new JPanel();
chiffre.setPreferredSize(new Dimension(165, 225));
JPanel panEcran = new JPanel();
panEcran.setPreferredSize(new Dimension(220, 50));
for(int i = 0; i < tab_string.length; i++)
{
tab_button[i] = new JButton(tab_string[i]);
tab_button[i].setPreferredSize(dim);
switch(i){
case 14 :
tab_button[i].setForeground(Color.red);//cooriger
tab_button[i].addActionListener(new ResetListener());
tab_button[i].setPreferredSize(dim2);
operateur.add(tab_button[i]);
break;
case 10 :
tab_button[i].addActionListener(new VoirListener());//voir le solde
tab_button[i].setPreferredSize(dim2);
operateur.add(tab_button[i]);
break;
case 11 :
tab_button[i].addActionListener(new RetListener());//retrait
tab_button[i].setPreferredSize(dim2);
operateur.add(tab_button[i]);
break;
case 12 :
tab_button[i].addActionListener(new ValiderListener());//valider
tab_button[i].setPreferredSize(dim2);
operateur.add(tab_button[i]);
break;
case 13 :
tab_button[i].addActionListener(new ChoixListener());//choix langue
tab_button[i].setPreferredSize(dim2);
operateur.add(tab_button[i]);
break;
@Override
public void actionPerformed(ActionEvent arg0) {
}
}
class ChoixListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent arg0) {
ecran.setText("Bonjour,veuillez choisir la langue"+
"/nFrançais.........press 1" +
"/nEnglish..........press 2");
}
}
le probleme que je confronte est le suivant:
dans les classe ActionListener je dois faire des appel des fonction de la classe Compte ,et je ne sais pas comment faire puisque la classe interface ne contient pas de main;
et ma classe main contient:
public class MAIN {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Distributeur DAB= new Distributeur();
}
}
voila aussi ma classe compte
public class Compte {
private int montant;
private int numero;
private String proprietaire;
public Compte(String proprietaire, int numero, int montant){
this.proprietaire = proprietaire;
this.numero = numero;
this.montant = montant;
}
public void deposer(double a)
{
this.montant+=a;
}
public void retirer(double e)
{ if ((e>=30000)&&(e<=3000)){
this.montant-=e;
}
else println("vous ne pouvez pas retirer cette somme");
}
/* public void modifier(int somme) {
if (this.montant + somme > 0)
this.montant = this.montant + somme;
}*/
private void println(String string) {
// TODO Auto-generated method stub
}
public int getMontant() {
return this.montant;
}
public int getNumero() {
return this.numero;
}
public String getProprietaire() {
return proprietaire;
}
public class MAIN {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//Ici est créé l'objet DAB de la classe Distributeur mais on ne l'utilise pas...
Distributeur dab = new Distributeur(); // je préfère dab à DAB
/* pour l'utiliser il faut ajouter:
dab.laMethodeDeLaClasseDistributeur(avecSesParamsEventuels);
Moi je remplacerais le constructeur Distributeur() par une méthode:
public void distributeur(){
*/
dab.distributeur();
}
}