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

Agents de placement/Fenêtres Java Discussion :

Persistence d'un JDialog


Sujet :

Agents de placement/Fenêtres Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2008
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2008
    Messages : 10
    Par défaut Persistence d'un JDialog
    Bonjour, à tous.
    Je vais vous développer mon problème. J'essaye de faire apparaître un pop-up avec un bouton, qui serait persistent et prioritaire sur le reste. J'entends par là, que tant que nous n'avons pas cliquer sur le bouton de ce pop-up, le programme ne continue pas et attend.
    Voilà le code que j'ai :
    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
    39
    40
    41
     
    import java.awt.event.ActionEvent; 
    import java.awt.event.ActionListener; 
    import javax.swing.JButton; 
    import javax.swing.JDialog; 
    import javax.swing.JPanel; 
     
     
     
    public class continuer extends JDialog implements ActionListener { 
    private JButton continuerClient = new JButton("Vous allez enrégistrer les clients"); 
    private JButton continuerCommunication = new JButton("Vous allez enrégistrer les communications"); 
     
     
    public continuer(final String identity){ 
    if(identity.equals("client")){ 
    this.add(continuerClient); 
    continuerClient.addActionListener(this); 
    } 
    else { 
    this.add(continuerCommunication); 
    continuerCommunication.addActionListener(this); 
    } 
    this.pack(); 
    this.setVisible(true); 
     
     
    } 
     
    public void actionPerformed(ActionEvent e){ 
    JButton b = (JButton)e.getSource(); 
    if (b == continuerClient) processContinue(); 
    if (b == continuerCommunication) processContinue(); 
    } 
     
    public void processContinue(){ 
    dispose(); 
    } 
     
     
    }
    Cependant, cela ne suffit pas, apparement je dois rajouter qqch à mon JDialog, mais j'ai bon fouiller dans l'api, je ne vois pas quoi. Si qqn a une idée, merci d'avance.

  2. #2
    Membre Expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Par défaut
    Un JDialog est bloquant s'il est modal :


  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2008
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2008
    Messages : 10
    Par défaut
    Un grand merci, je ne trouvais pas cette commande en dépit de mes recherches sur l'api.

    Cependant, j'ai un deuxième et dernier problème qui se pose à moi. Je n'ai jamais réalisé que des interfaces graphiques java avec awt. Sur awt, le bouton quitter (la croix) des fenêtres n'est pas implémenté, sur swing, il l'est déjà. Cependant, j'ai pour mission d'ajouter une condition avant la fermeture de mon JMenu. En fouillant la doc, je pensais pouvoir faire qqch avec la classe : JMenu.WinListener . Cependant, cette classe étant déclarée protected, et n'ayant pas de sous-classe, je n'arrive pas à créer un objet de cette classe. Comment puis-je créer un objet de cette classe ?

  4. #4
    Membre Expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Par défaut
    Il faut désactiver l'action par défaut :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dialog.setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
    Puis implémenter un WindowListener :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    dialog.addWindowListener(new WindowAdapter() {
        @Override
        public void windowClosing(WindowEvent event) {
            // mon code de test, et si OK il faut faire la ligne suivante pour fermer :
            dispose();
        }
    });

Discussions similaires

  1. [JDialog] JDialog ou JFrame ?
    Par Mister Nono dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 25/04/2004, 21h55
  2. [PaintBox] Persistance du dessin non créé dans onPaint
    Par princesse dans le forum C++Builder
    Réponses: 10
    Dernier message: 21/04/2004, 17h47
  3. [JDialog] Modification dans une fenêtre
    Par cefabien dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 01/10/2003, 13h18
  4. [Persistence][Framework]Avis.
    Par quilo dans le forum Persistance des données
    Réponses: 5
    Dernier message: 10/09/2003, 14h55
  5. Récuperer les icons des JDialog
    Par Pro_Fete dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 17/04/2003, 13h00

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