Fermeture d'un popup JOptionPane

Résolu/Fermé
squeezen123 Messages postés 5 Date d'inscription dimanche 24 juin 2007 Statut Membre Dernière intervention 29 août 2007 - 24 juin 2007 à 20:10
zefoots Messages postés 146 Date d'inscription samedi 9 juin 2007 Statut Membre Dernière intervention 11 septembre 2007 - 24 juin 2007 à 22:12
hello !!

Dans le cadre d'un projet Socket Programming, j'ai créé une fenêtre popup type JOptionPane.
Le problème c'est que j'ai mis un timeout pour faire disparaitre la fenetre après un certain temps et que j'arrive pas
à la fermer ?!!? j'ai essayé this.setVisible(false) ou encore a supprimer l'objet rien n'y fait....

C'est la toute dermière partie de mon projet que j'aimerais implémenter (il doit etre rendu mardi matin prochaine : le 26 !!! )

Donc si qqun peut m'aider. Voila une partie du code :

JOptionPane jOption=new JOptionPane();

// On commence le timer pour killer le callThread au bout de 18sec: avant le timeout de l'autre

timerQuestionCall=new Timer();
timerQuestionCall.schedule(new CallQuestionTask(this,p2PManager,jOption),
18*1000, //initial delay
18*1000); //subsequent rate
System.err.println("TIMER LANCEEEE depuis " + requestSplited[3] + " pour le thread " + this.peer.buddyName);

int callReceive = jOption.showConfirmDialog(null, "Call received :\n"+ requestSplited[3]+"\n" + "IP: " +requestSplited[4] + " / Port: "+ requestSplited[5]+ "\n\nWould you like to answer to this call ?", "Incomming call", JOptionPane.YES_NO_OPTION);


merci
A voir également:

3 réponses

zefoots Messages postés 146 Date d'inscription samedi 9 juin 2007 Statut Membre Dernière intervention 11 septembre 2007 62
24 juin 2007 à 20:43
A priori, d'après ce que tu écris, j'en déduis que tu programmes en java ...

Les JOptionPane sont des boîtes modales. Donc à partir du moment où tu invoques la méthode showConfirmDialog(), les événements de ton Timer ne te parviennent plus car ils sont arrêtés par la boîte JOptionPane (c'est à ça que ça sert les boîtes modales)

Je te suggère d'implémenter toi-même une classe qui hérite de JOptionPane et de mettre ton Timer dedans et non dans une classe externe. A ce moment là, les événements du Timer te parviendront.
0
squeezen123 Messages postés 5 Date d'inscription dimanche 24 juin 2007 Statut Membre Dernière intervention 29 août 2007
24 juin 2007 à 21:47
ouais ok merci, je vais tester. merci ;-)
0
zefoots Messages postés 146 Date d'inscription samedi 9 juin 2007 Statut Membre Dernière intervention 11 septembre 2007 62
24 juin 2007 à 22:12
ok tiens moi au courant
0