edgardjok
Messages postés12Date d'inscriptionsamedi 10 novembre 2001StatutMembreDernière intervention17 août 2009
-
28 févr. 2009 à 20:04
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013
-
28 févr. 2009 à 23:41
BONJOUR,mon probleme est tt simple j'ai fait une interface graphique dans laquelle je mets des valeurs dans les JTextField et en cliquant sur le bouton calculer il devrait faire le calcul et afficher les resultats dans les champs JTextfield du label mensualités et interets.
mais rien ne se passe quand je clique sur le bouton
edgardjok
Messages postés12Date d'inscriptionsamedi 10 novembre 2001StatutMembreDernière intervention17 août 2009 28 févr. 2009 à 20:06
BONJOUR,mon probleme est tt simple j'ai fait une interface graphique dans laquelle je mets des valeurs dans les JTextField et en cliquant sur le bouton calculer il devrait faire le calcul et afficher les resultats dans les champs JTextfield du label mensualités et interets.
mais rien ne se passe quand je clique sur le bouton.
voici le code:
/**
* Class Emprunt - write a description of the class here
*
* @author (your name)
* @version (a version number)
*/
public class Empr1 extends JApplet implements ActionListener
{
static final NumberFormat formateur = new DecimalFormat("#.00");
public void init() {
setContentPane(createPanel());
butt.addActionListener(this);
}
private static JPanel createPanel() {
JLabel lab = new JLabel("capital emprunté:");
JTextField txt = new JTextField ();
lab.setLabelFor(txt);
JLabel lab1 = new JLabel("taux d'intérêt en %:");
JTextField txt1 = new JTextField ();
lab1.setLabelFor(txt1);
JLabel lab2 = new JLabel("Durée en années:");
JSpinner val = new JSpinner();
lab2.setLabelFor(val);
JLabel lab3 = new JLabel("mensualités:");
JTextField txt3 = new JTextField();
lab3.setLabelFor(txt3);
JLabel lab4 = new JLabel("Intérêts:");
JTextField txt4 = new JTextField ();
lab4.setLabelFor(txt4);
JButton butt = new JButton("Calculer:");
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013129 28 févr. 2009 à 20:37
Salut,
Erreur classique de portée de variable : tu créer la variable butt locale dans la fonction et non au niveau de ta classe, il te suffit de supprimer ce que j'ai barré pour que cà marche :
public class Empr1 extends JApplet implements ActionListener
{
static final NumberFormat formateur = new DecimalFormat("#.00");
double taux ;
float capital ;
double mens;
float Int;
int nbAnnées;
JTextField txt1;
JTextField txt3;
JTextField txt4;
JTextField txt;
JButton butt;
// variable niveau classe
public void init() {
setContentPane(createPanel());
butt.addActionListener(this);
}
private static JPanel createPanel() {
JLabel lab = new JLabel("capital emprunté:");
JTextField txt = new JTextField ();
lab.setLabelFor(txt);
JLabel lab1 = new JLabel("taux d'intérêt en %:");
JTextField txt1 = new JTextField ();
lab1.setLabelFor(txt1);
JLabel lab2 = new JLabel("Durée en années:");
JSpinner val = new JSpinner();
lab2.setLabelFor(val);
JLabel lab3 = new JLabel("mensualités:");
JTextField txt3 = new JTextField();
lab3.setLabelFor(txt3);
JLabel lab4 = new JLabel("Intérêts:");
JTextField txt4 = new JTextField ();
lab4.setLabelFor(txt4);
<strike> JButton </strike>butt = new JButton("Calculer:");
// variable niveau fonction !!! Pas la même que le butt niveau classe si tu rajoute le JButton devant !
//butt.setMnemonic(KeyEvent.VK_B);
JPanel pan = new JPanel();
pan.add(lab);
pan.add(txt);
txt.setColumns(10);
pan.add(lab1);
pan.add(txt1);
txt1.setColumns(10);
pan.add(lab2);
pan.add(val);
pan.add(lab3);
pan.add(txt3);
txt3.setColumns(10);
txt3.setEditable(false);
pan.add(lab4);
pan.add(txt4);
txt4.setColumns(10);
txt4.setEditable(false);
pan.add(butt);
return pan;
}
public void Emprunt(){
double taux ;
double capital ;
double mens;
int nbAnnées;
JSpinner val = new JSpinner();
capital =Double.parseDouble(txt.getText().trim());
taux = Double.parseDouble(txt1.getText().trim());
nbAnnées =(Integer) val.getValue();
taux /= 1200.0;
mens = taux* capital /(1 - Math.pow(1+ taux, - nbAnnées));
edgardjok
Messages postés12Date d'inscriptionsamedi 10 novembre 2001StatutMembreDernière intervention17 août 2009 28 févr. 2009 à 20:49
en supprimant JBUTTON comme tu me l'as conseillé ca ne marche pas j'ai un message d'erreur /non static variable butt cannot be referenced from a static context
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013129 28 févr. 2009 à 23:41
Salut,
Pourquoi donc tu la déclare comme static ta fonction ? Elle a besoin d'un contexte pour fonctionner.
______________________________________
DarK Sidious