Bloquer Jdialog

koni77 Messages postés 2 Date d'inscription mercredi 5 mars 2008 Statut Membre Dernière intervention 5 mars 2008 - 5 mars 2008 à 15:52
koni77 Messages postés 2 Date d'inscription mercredi 5 mars 2008 Statut Membre Dernière intervention 5 mars 2008 - 5 mars 2008 à 16:21
Bonjour tout le monde :)
Je solicite votre aide ;)

Dans le cadre de notre projet tutoré (messenger en java), je dois avir dans ma fenêtre de conversation un bouton permettant de changer la police, jusque là, normal ^^.
J'ai choisi de prendre le Fontchooser de lovejava (merci à lui ;)). J'ai par contre un petit souci...
Je retourne l'état du Fontchooser (true/false) en fonction du bouton du dialogue enfoncé (validé police/annulé).
Le problème, c'est qu'il me retourne l'état au moment ou je lance dialogue :/
Il y avait bien un while (dialogue.isVisible) Thread.yield();
Mais tout plantait (fenêtre grise, impossible de fermer le dialogue ou les autres JFrame derrière).

J'ai donc fait ceci :
    try {
        while (dialogue.isVisible())
        dialogue.wait();
    } catch (InterruptedException e) {}
   
    if (!(dialogue.isVisible()))
        dialogue.notify();
   
    return etat;

Mais au moment de lancer le dialogue, il lève l'exception, et ne fais donc pas le wait().

Voilà mon problème, j'attends vos lumière !
Merci ;)

2 réponses

Utilisateur anonyme
5 mars 2008 à 16:03
Utilise ça :

 
void
setModal(boolean modal)


          Specifies whether this dialog should be modal.

Et pense à regarder la documentation Java avant de poser une question ici, ça doit être ton premier réflexe :
http://java.sun.com/javase/6/docs/api/

Regarde ça aussi si tu piétines encore :
http://java.sun.com/docs/books/tutorial/uiswing/components/dialog.html

TUER : http://tuer.tuxfamily.org/tuer.php

yeah! vive java
0
koni77 Messages postés 2 Date d'inscription mercredi 5 mars 2008 Statut Membre Dernière intervention 5 mars 2008
5 mars 2008 à 16:21
Merci pour ton aide gouessej :)
Je l'avais un peut retourner cette doc (ce qui m'a notamment permit de trouver le wait()), mais le setModal je ne connaissais pas :).

Je viens de voir comment ça marchait, mais même souci...
Si je mets dialogue.setModal(true);
Il me retourne l'état sans que j'ai cliqué sur un bouton.

Et si je mets    
while (dialogue.isVisible())
        dialogue.setModal(true);

Le dialogue est tout gris, et je ne peux plus rien quitter :/  
0
Rejoignez-nous