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 :

JDialog non bloquant


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre averti
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    42
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 42
    Par défaut JDialog non bloquant
    Bonjour à tous

    J'ai un petit soucis avec un JDialog.

    En fait j'ai crée un dialogue dans une fenêtre, et j'aimerai savoir comment rendre ce dialogue bloquant.

    Je m'explique : lorsque je crée le dialogue j'aimerai rester bloqué jusqu'à ce que je valide ou je ferme le dialogue, ensuite l'exécution du code se poursuit.

    Merci beaucoup d'avance.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 164
    Par défaut
    Bonjour

    Dans les propriétées de te JDialog, coche Modal

    @+

  3. #3
    Membre averti
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    42
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 42
    Par défaut
    Citation Envoyé par PM_calou Voir le message
    Bonjour

    Dans les propriétées de te JDialog, coche Modal

    @+
    je l'ai fait mais ça ne marche pas, je ne comprend rien

  4. #4
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut
    As tu mis un parent à ta JDialog ? (la JFrame par exemple ?)

  5. #5
    Membre averti
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    42
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 42
    Par défaut
    Citation Envoyé par atha2 Voir le message
    As tu mis un parent à ta JDialog ? (la JFrame par exemple ?)
    Oui , j'avait mis un parent, en plus je l'affiche pour voir si il est null ça me donne ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    sylogis.ged.swing.ApplicationAGED[
    frame0,0,0,1092x744,invalid,
    layout=java.awt.BorderLayout,
    title=,
    resizable,normal,
    defaultCloseOperation=EXIT_ON_CLOSE,
    rootPane=javax.swing.JRootPane[,4,30,1084x710,layout=javax.swing.JRootPane$RootLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=16777673,maximumSize=,minimumSize=,preferredSize=],rootPaneCheckingEnabled=true]
    Donc je ne sais pas d'ou vient le soucis.

    merci

  6. #6
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut
    Fait voir ton code de creation de ta JDialog

  7. #7
    Membre averti
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    42
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 42
    Par défaut
    Citation Envoyé par atha2 Voir le message
    Fait voir ton code de creation de ta JDialog
    En fait j'ai un classe UsersGroupe qui hérite de JDialog
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    public class UsersGroupe extends javax.swing.JDialog {
     
        public UsersGroupe(JFrame frame, Vector<Users> users1, Vector<Users> users2) {
            super(frame);
            this.setModal(true);
            initGUI(users1,users2);
        }
     
    }
    Et dans une autre classe qui herite de JFrame j'ai un attribut de type UsersGroupe nommé userGroupe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    int privilege =JOptionPane.showConfirmDialog(appli, 
    "Voulez vous effectuer la gestion des privileges","Privileges", JOptionPane.YES_NO_OPTION);
            if (privilege == JOptionPane.OK_OPTION){
                userGroupe = new UsersGroupe(appli,users,users2);
     
                userGroupe.setModal(true);
                userGroupe.setVisible(true);            
     
            }else{
                System.out.println("je ne gere pas les privilges ");
     
            }
    // suite..........
    Donc en gros lors de l'execution, j'ai un message qui me demande si je veux gerer les privileges , si c'est le cas il y'a un traitement qui va se faire au niveau du Jdialog ; une fois j'ai fini je veux faire la suite.

    Mais la le soucis, il fait la suite directement apres l'apparition du JDialog

  8. #8
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut
    Je ne vois pas vraiment ton problème mais normalement, une JDialog est par defaut modal(me semble t'il)de plus je vois que tu fais 2 fois setModal(true);
    une fois dans le constructeur, l'autre fois avant le setVisible.Ca ne sert à rien...

  9. #9
    Membre averti
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    42
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 42
    Par défaut
    Citation Envoyé par atha2 Voir le message
    Je ne vois pas vraiment ton problème mais normalement, une JDialog est par defaut modal(me semble t'il)de plus je vois que tu fais 2 fois setModal(true);
    une fois dans le constructeur, l'autre fois avant le setVisible.Ca ne sert à rien...
    oui le deuxième s'est glissé juste comme ça, en faisant mes tests j'ai oublié de le viré.

    Merci à tous en tous cas.
    Je vais refaire des tests et si ça marche je posterai les raisons

  10. #10
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut
    Je crois que j'ai trouvé quand tu crée ta JDialog tu veux faire des choses en conséquent. Modal veut dire bloquante pour l'utilisateur et non pour le programme. Si tu veut attendre que la fenêtre soit fermer, pour continuer l'execution du programme, tu dois utiliser des events et les listeners adaptés.

  11. #11
    Membre averti
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    42
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 42
    Par défaut
    Citation Envoyé par atha2 Voir le message
    Je crois que j'ai trouvé quand tu crée ta JDialog tu veux faire des choses en conséquent. Modal veut dire bloquante pour l'utilisateur et non pour le programme. Si tu veut attendre que la fenêtre soit fermer, pour continuer l'execution du programme, tu dois utiliser des events et les listeners adaptés.
    ah ok d'accord , donc je doit faire la suite en validant dans le JDialog par exemple.

    Oki merci beaucoups atha2

  12. #12
    Membre averti
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    42
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 42
    Par défaut
    Citation Envoyé par hbellahc Voir le message
    ah ok d'accord , donc je doit faire la suite en validant dans le JDialog par exemple.

    Oki merci beaucoups atha2
    Finalement ça marche ,je ne sais même pas pourquoi

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 02/09/2005, 12h47
  2. Rendre la lecture non bloquante
    Par Charlinecha dans le forum API standards et tierces
    Réponses: 4
    Dernier message: 05/07/2005, 15h46
  3. [debutant] JDialog non modal
    Par andresan dans le forum Agents de placement/Fenêtres
    Réponses: 10
    Dernier message: 12/05/2004, 13h40
  4. Réponses: 3
    Dernier message: 16/03/2004, 16h42
  5. [API] Communication série NON-bloquante : OVERLAPPED/Thread
    Par Rodrigue dans le forum C++Builder
    Réponses: 2
    Dernier message: 07/11/2003, 13h43

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