IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

[Débutant] Champs d'un Dialog Box


Sujet :

AWT/Swing Java

  1. #1
    Membre confirmé Avatar de FidoDido®
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 101
    Par défaut [Débutant] Champs d'un Dialog Box
    Hello everybody !

    Voila mon problème : je suis en train de créer une GUI pour une application. Je suis malheureusement super à la bourre et donc je n'ai pas vraiment eu le temps de me pencher sur les subtilités de Swing. J'utilise donc VE pour Eclipse. Je me suis créé une frame principale avec ma barre de menus une petite ToolBar.

    Ce que je veux maintenant faire c'est d'ouvrir une DialogBox à partir d'un clic sur un bouton (ça je sais faire tant qu'il n'y a pas de données à récupérer dans les champs de la dialog box) et récupérer les informations entrées dans les champs de cette dialogBox.

    Merci de votre aide.

    FidoDido®

  2. #2
    Membre Expert Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Par défaut
    Ce que tu peut faire c'est utliser la classe JOptionPane (javax.swing). A l'interieur il y a pleinde méthode statique qui permette d'afficher différentes fenetre de dialogue. Tu peux faire par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String s=JOptionPane.showInputDialog("Quel age avez vous?") ;

  3. #3
    Membre confirmé Avatar de FidoDido®
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 101
    Par défaut
    Ouais j'avais commencé à regarder ça, mais j'ai pas trouvé comment mettre plusieurs JTextfield...

  4. #4
    Membre Expert Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Par défaut
    Tu peut nous donner le code que tu as pour ta dialogBox (si tu en as un)

  5. #5
    Membre confirmé Avatar de FidoDido®
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 101
    Par défaut
    Alors voila en pièces jointes les codes de ma main frame et des deux boites de dialogue que j'utilise. Celle pour quitter est ok puisque je ne cherche pas à récupérer les données.

    Celle pour Constante me pose pb.
    Fichiers attachés Fichiers attachés

  6. #6
    Membre Expert Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Par défaut
    Ce que tu pourrais faire.
    Dans ta classe ConstanteDialogBox c'est faire c'est faire des méthode getTexte1(),getTexte2,getBoutonValider(),getBoutonAnnuler().... qui renverrais ce que contienne le JTextField.
    Et dans ta classe principale appeller ces méthodes dès qu'un bouton a été cliqué. Il faudra donc attendre qu'un bouton soit cliqué. Moi je fait ça d'une manière peu propre.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    ConstanteDialogBox c=...;
     
    while (c.getBoutonValider!=False)
    {
    }
    String s1=c.getTexte1();
    ..

  7. #7
    Membre confirmé Avatar de FidoDido®
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 101
    Par défaut
    Avec le ConstanteDialogBox corrigé. Je lançais initialize() trop tot ce qui provoquait des exceptions.

    Le problème c'est que ce n'est en effet pas très propre...
    Si je fais une méthode getBoutonValider et que je l'appelle depuis la mainFrame, que je lance un actionListener sur ce bouton valider depuis la mainFrame ça marche ?

  8. #8
    Membre confirmé Avatar de FidoDido®
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 101
    Par défaut
    Oups, oublié la pièce jointe...
    Fichiers attachés Fichiers attachés

  9. #9
    Membre Expert Avatar de herve91
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 282
    Par défaut
    Citation Envoyé par guigui5931
    Et dans ta classe principale appeller ces méthodes dès qu'un bouton a été cliqué. Il faudra donc attendre qu'un bouton soit cliqué. Moi je fait ça d'une manière peu propre.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    ConstanteDialogBox c=...;
     
    while (c.getBoutonValider!=False)
    {
    }
    String s1=c.getTexte1();
    ..
    Ce n'est pas comme cela qu'il faut procéder.. Là tu fais une attente active qui de plus va bloquer le thread EDT, donc plus de rafraîchissement de l'IHM, plus de prise en compte des événements...
    Utilise une JDialog modale afin de bloquer les autres fenêtres de l'application tant qu'elle reste ouverte.
    Un showInputDialog fait très bien l'affaire. Pour mettre plusieurs JTextField regarde la méthode statique showXXXDialog (je crois showOptionDialog mais plus sûr) qui prend en entrée un Object[], et tu places tes JTextField dedans.

  10. #10
    Membre Expert Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Par défaut
    Ce que tu doit pouvoir faire c'est créer un ActionListener dans ta MainFrame (tu mettra le corps dans cette méthde) et le passer au contructeur du ConstantFrame (je l'ai jamais fait mais ya pas de raison)

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 68
    Par défaut
    Je suis d'accord avec guigui !

  12. #12
    Membre confirmé Avatar de FidoDido®
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 101
    Par défaut
    Citation Envoyé par herve91
    Ce n'est pas comme cela qu'il faut procéder.. Là tu fais une attente active qui de plus va bloquer le thread EDT, donc plus de rafraîchissement de l'IHM, plus de prise en compte des événements...
    Utilise une JDialog modale afin de bloquer les autres fenêtres de l'application tant qu'elle reste ouverte.
    Un showInputDialog fait très bien l'affaire. Pour mettre plusieurs JTextField regarde la méthode statique showXXXDialog (je crois showOptionDialog mais plus sûr) qui prend en entrée un Object[], et tu places tes JTextField dedans.
    Je ne suis pas totalement contre faire un actionListener dans la mainFrame, mais c'est fait tout seul avec le showOptionDialog, je crois que je vais apprendre à m'en servir...

  13. #13
    Membre confirmé Avatar de FidoDido®
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 101
    Par défaut
    Est ce que quelqu'un peut me donner un exmple de showOptionDialog avec deux champs texte pcq je ne vois vraiment pas comment faire ?

    Merci

Discussions similaires

  1. Réponses: 6
    Dernier message: 21/10/2010, 15h16
  2. [MFC] Débutant | Grille dans dialog Box
    Par Hannubis dans le forum MFC
    Réponses: 3
    Dernier message: 06/12/2005, 10h04
  3. Pop-up d'une dialog box a partir d'un bouton
    Par bobbyjack dans le forum MFC
    Réponses: 21
    Dernier message: 13/09/2005, 16h32
  4. Insertion dialog box dans feuille SDI
    Par Tom Joad dans le forum MFC
    Réponses: 3
    Dernier message: 12/04/2004, 01h04
  5. [Win32]Open/Save Dialog Box
    Par Chance666 dans le forum Windows
    Réponses: 2
    Dernier message: 07/01/2004, 17h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo