for (int i=0;i<11;i++){ clavier[i].addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ JButton b=(JButton)(e.getSource()); ecran.setText(ecran.getText()+b.getText()); } }); } clavier[11].addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ ecran.setText(""); } });La boucle permet d'affecter un ActionListener à chacun des boutons 0 à 10, portant les chiffres et la virgule. L'action déclenchée est décrite par les instructions
JButton b=(JButton)(e.getSource());qui permet de récupérer dans la variable b le JButton qui est à l'origine de l'évènement (sa "source"),
ecran.setText(ecran.getText()+b.getText());qui ajoute au texte du JTextField ecran le texte écrit sur le bouton source.
Pour le bouton d'indice 11 l'action déclenchée consiste à effacer le contenu du JTextField ecran.