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 :

showMessageDialog disparait quand j'ouvre une autre application


Sujet :

AWT/Swing Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2003
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 81
    Points : 38
    Points
    38
    Par défaut showMessageDialog disparait quand j'ouvre une autre application
    Bonjour,
    Dans mon code je fais appel à un moment donné à JOptionPane.showMessageDialog
    l'utilisateur peut entre temp ouvrir une autre application et dans ce cas quand il revient sur mon application la boite de dialogue n'apparait plus et l'utilisateur est bloqué et il est obligé en plus 's'il se rend compte de faire un (alt tab) pour retrouver sa boite de dialogue et continuer l'execution.
    Ma question est : Est ce possible que la boite s'affiche tout le temp devant ma fenetre quand je reviens sur mon application ?
    Merci d'avance

  2. #2
    Membre extrêmement actif Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 814
    Points
    814
    Par défaut
    essai avec dialog.toFront() si mes souvenirs sont bons... après il faut t'arranger pour que ce soit pris en compte à chaque fois que tu reviens sur ta fenêtre ...
    Heureux soient les fêlés, car ils laisseront passer la lumière.

    Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

  3. #3
    Membre expérimenté
    Avatar de muad'dib
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2003
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2003
    Messages : 1 013
    Points : 1 381
    Points
    1 381
    Par défaut
    Dans l'appel de cette fonction le premier argument à passer est le composant parent à la boite de dialogue. Si celui-ci est à null, une frame par défaut est utilisé. Si tu spécifies la frame de ton application, ta boite de message sera modal par rapport à cette frame, ce qui solutionera ton problème.

  4. #4
    Membre chevronné
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Points : 2 197
    Points
    2 197
    Par défaut
    Pourtant c'est indiqué dans la documentation sun que les Dialog sont modales par défaut.
    Peut-être as-tu mis null dans le paramètre indiquant le parent? il faut mettre ta fenêtre principale de l'application.

  5. #5
    Nouveau membre du Club
    Inscrit en
    Avril 2003
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 81
    Points : 38
    Points
    38
    Par défaut
    Merci c vrai
    Mais j'ai un autre probleme
    qaund je lance mon application la premiere chose que je fais est d'afficher un showMessageDialog
    dans ce cas si l'utilisateur est en train de naviguer entre ses application il ne se rend pas compte de cette boite surtout qu'elle n'apparait meme pas dans la barre des taches

  6. #6
    Membre expérimenté
    Avatar de muad'dib
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2003
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2003
    Messages : 1 013
    Points : 1 381
    Points
    1 381
    Par défaut
    De 2 choses l'une : Soit tu créés une fenêtre de splash pour que ton message en soit modal, soit le composant JOptionPane ne correspond pas à ton besoin.

  7. #7
    Nouveau membre du Club
    Inscrit en
    Avril 2003
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 81
    Points : 38
    Points
    38
    Par défaut
    Citation Envoyé par muad'dib Voir le message
    De 2 choses l'une : Soit tu créés une fenêtre de splash pour que ton message en soit modal, soit le composant JOptionPane ne correspond pas à ton besoin.
    en fait je debute en Swing
    voila le code que je met dans le main
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    boolean ok = false;
    while (!ok){
    	JOptionPane.showMessageDialog(null, message ,message,JOptionPane.QUESTION_MESSAGE);				
    	if(test()){	
    		ok =true ;			
    	}					
    }
    Est ce que tu peux me dire comment le remplacer par une fenêtre de splash

  8. #8
    Membre expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Points : 3 919
    Points
    3 919
    Par défaut
    Salut,

    Je pense que ce que muad'dib voulait te dire par l'utilisation d'une fenêtre de splash, c'était pour éviter justement que tu ne mettes le parent de ton JOptionPane à null... Tout ça pour ne pas avoir une JOptionPane non modale. Donc, ce qu'il te faudrait faire, c'est soit utiliser autre chose qu'un JOptionPane, soit utiliser comme parent une SplashScreen

    Voilà, ++
    Gueritarish
    Pas de questions technique par MP, les forums sont là pour ça.

  9. #9
    Nouveau membre du Club
    Inscrit en
    Avril 2003
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 81
    Points : 38
    Points
    38
    Par défaut
    Citation Envoyé par Gueritarish Voir le message
    Salut,

    Je pense que ce que muad'dib voulait te dire par l'utilisation d'une fenêtre de splash, c'était pour éviter justement que tu ne mettes le parent de ton JOptionPane à null... Tout ça pour ne pas avoir une JOptionPane non modale. Donc, ce qu'il te faudrait faire, c'est soit utiliser autre chose qu'un JOptionPane, soit utiliser comme parent une SplashScreen

    Voilà, ++
    Gueritarish
    est ce que tu peux me dire stp comment utiliser JOptionPane.showMessageDialog avec un parent SplashScreen

  10. #10
    Membre expérimenté
    Avatar de muad'dib
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2003
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2003
    Messages : 1 013
    Points : 1 381
    Points
    1 381
    Par défaut
    Facile. Suffit de créer une class SplashScreen qui étend générallement JWindow (sans bordures) et ensuite tu fais un truc du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Splash monSplash = new Splash();
    splash.setVisible(true);
    JOptionPane.showMessageDialog(splash, "salut");

Discussions similaires

  1. [AC-2003] Empêcher d'ouvrir une autre application quand la mienne est lancée
    Par flet le kid dans le forum VBA Access
    Réponses: 4
    Dernier message: 02/07/2009, 14h04
  2. Réponses: 4
    Dernier message: 25/07/2005, 14h24
  3. Mettre en avant plan une autre application...
    Par loupdeau dans le forum MFC
    Réponses: 13
    Dernier message: 19/05/2005, 13h26
  4. Réponses: 7
    Dernier message: 23/03/2005, 22h23
  5. Recuper les items de ListBox d'une autre application [API?]
    Par Shamanisator dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 27/09/2002, 12h32

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