Bonjour

je suis actuellement le cours programmation Java pour les enfants et parents et je butte sur la transmission des paramètres entre class.
Voici le code des mes deux class:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import javax.swing.*;
import java.awt.GridLayout;
 
public class CalculSimple {
	public static void main(String[] args) {
		JPanel fenetre = new JPanel();
		GridLayout disposition = new GridLayout(4,2,5,5); //Grille de 4 lignes et 2 colonnes espacées de 5 dots
		fenetre.setLayout(disposition); //on affecte la grille à la fenêtre
		//création des composants
		JLabel label1 = new JLabel("Nombre 1: ");
		JTextField nb1 = new JTextField(10);
		JLabel label2 = new JLabel("Nombre 2: ");
		JTextField nb2 = new JTextField(10);
		JLabel label3 = new JLabel("Résultat: ");
		JTextField resultat = new JTextField(10);
		JButton lancer = new JButton("Ajouter");
		JButton retirer = new JButton("Soustraire");
		//Intégration des composants dans la fenêtre
		fenetre.add(label1);
		fenetre.add(nb1);
		fenetre.add(label2);
		fenetre.add(nb2);
		fenetre.add(label3);
		fenetre.add(resultat);
		fenetre.add(lancer);
		fenetre.add(retirer);
		//Création d'un cadre et affectation à la fenêtre
		JFrame cadre = new JFrame("Addition");
		cadre.setContentPane(fenetre);
		cadre.setSize(400,150);
		cadre.setVisible(true);
		//Affectation des listener aux boutons
		Moteur go = new Moteur(); //Moteur est la class qui gère les évènements
		lancer.addActionListener(go);
		retirer.addActionListener(go);
	}
 
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JOptionPane;
import javax.swing.JButton;
 
//Class qui est à l'écoute d'un évènement
public class Moteur implements ActionListener {
	CalculSimple calcul; //Instance de la class CalculSimple.
 
	//Fonction constructeur
	Moteur(CalculSimple calcul) {
		this.calcul = calcul; 
	}
 
	//Méthode utilisée dès qu'il y a un évènement
	public void actionPerformed(ActionEvent event){
		JButton touche = (JButton) event.getSource(); //touche est l'instance de l'objet qui a créé l'évènement
		String nTouche = touche.getText();            //nTouche est une variable contenant le texte de la touche indéxée
 
		//Méthode permettant d'afficher une boîte de dialogue
		JOptionPane.showMessageDialog(null,  "Il y a une une action sur la touche:  " + nTouche,"Afficheur d'actions",JOptionPane.WARNING_MESSAGE);
 
		calcul.resultat.setText(nTouche);
 
	}	
}
Le problème est sur la dernière ligne: le paramètre resultat n'est pas reconnu.

Merci de votre aide

Michel