Utilisation d'une fenêtre de dialogue pour poser une question et récupérer la réponse dans un bouton de choix déroulant.

     

alt : l'applet n'est pas visible par votre navigateur (dans le menu Outils, Modules complémentaires, activer le plugin Java(TM) Platform SE 6 U32 6.0.320.5 s'il est désactivé)
Appuyer sur le bouton de cette applet.

Vous pourrez saisir votre nom.

Tant que la fenêtre avec la question n'est pas fermée, l'application est bloquée : la fenêtre de dialogue est modale.

On utilise ici la méthode JOptionPane.showInputDialog(...).

import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JButton;
import javax.swing.JLabel;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.BorderLayout;

public class Dialogue5 extends JFrame implements ActionListener {
JButton bouton = new JButton("Pour saisir votre nom");
JLabel label = new JLabel(" ");

public Dialogue5() {
add(bouton, BorderLayout.NORTH);
add(label, BorderLayout.SOUTH);
bouton.addActionListener(this);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocation(100, 100);
pack();
setVisible(true);
}

public void actionPerformed(ActionEvent evt) {
String reponse = JOptionPane.showInputDialog(null, "Quel est votre nom ?");
label.setText("Votre nom est " + reponse);
}
}
class EssaiDialogue5 {
public static void main(String[] arg) {
new Dialogue5();
}
}

Vous pouvez voir :

  • le code de l'application décrite ici.
  • le code de l'applet.
    String reponse = JOptionPane.showInputDialog(null, message); : le premier paramètre indique la fenêtre "parent" ; si ce paramètre vaut null, la fenêtre de dialogue apparaît au milieu de l'écran. Le second paramètre donne l'énoncé de la question. La valeur de retour est la chaîne indiquée par l'utilisateur.

    © Irène Charon, Télécom ParisTech 2011