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

SWT/JFace Java Discussion :

Action lors de la fermeture (SWT/ECLIPSE)


Sujet :

SWT/JFace Java

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 182
    Points : 159
    Points
    159
    Par défaut Action lors de la fermeture (SWT/ECLIPSE)
    Bonjour

    Je souhaite ouvrir une MessageBox à la fermeture de l'application. J'ai écrit le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     
    shell.addListener(SWT.CLOSE, new Listener(){
     
                      public void handleEvent(Event event){
     
                            System.out.println("vu");
     
                            MessageBox messageBox = new MessageBox(shell,SWT.OK | SWT.CANCEL);
     
                      }
    Mais rien ne se passe !
    Je précise que j'utilise SWT/ECLIPSE
    mc

  2. #2
    Membre confirmé Avatar de desert
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    414
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2007
    Messages : 414
    Points : 479
    Points
    479
    Par défaut
    Il faut ouvrir ton messagebox à l'aide de la méthode open.
    Une fois ouvert, lorsque tu cliques pour le fermer, cette méthode te renvoie un int. A toi d'intercepter ce int et de le comparer à SWT.OK.
    Si ils concordent, tu utilises le doit de ton objet Event en lui affectant un true pour fermer ton shell.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 182
    Points : 159
    Points
    159
    Par défaut
    J'ai bien rajouter la methode open pour la message box mais toujours rien

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 35
    Points : 26
    Points
    26
    Par défaut
    Est-ce que ton "vu" s'affiche dans ta console ?

    N'y aurait-il pas un soucis sur le shell que tu utilises pour ta message box car tu veux fermer ton application, donc ton shell ?
    Essaye avec un nouveau shell. (new shell(),...)

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 182
    Points : 159
    Points
    159
    Par défaut
    Non, le "vu" ne s'affiche pas dans la console

    J'ai essayé avec un new shell sous la forme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
    Shell shell2 = new Shell(display,SWT.NONE);
     
    shell2.addListener(SWT.CLOSE, new Listener(){
     
    public void handleEvent(Event event){
     
    System.out.println("vu");
    MessageBox messageBox = new MessageBox(shell,SWT.OK | SWT.CANCEL);
    messageBox.open();
     
                      }
    mais pas plus de succès

  6. #6
    Membre confirmé Avatar de desert
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    414
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2007
    Messages : 414
    Points : 479
    Points
    479

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 182
    Points : 159
    Points
    159
    Par défaut
    merci ca marche

  8. #8
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2007
    Messages : 340
    Points : 379
    Points
    379
    Par défaut
    l'erreur est que tu as ajouté un écouteur en utilisant SWT.CLOSE alors que la bonne valeur est SWT.Close

  9. #9
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 86
    Points : 56
    Points
    56
    Par défaut
    Sinon le meilleur moyen est d'utiliser un DisposeListener:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    shell.addDisposeListener(new DisposeListener() {
     
    		public void widgetDisposed(DisposeEvent arg0) {
    			System.out.println(".widgetDisposed()");
     
    		}
    	});

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

Discussions similaires

  1. Ajout d'une action lors de la fermeture de Windows
    Par Francois Ronsin dans le forum Windows XP
    Réponses: 5
    Dernier message: 22/03/2008, 08h09
  2. Action lors d'une fermeture
    Par hugobosscool26 dans le forum C#
    Réponses: 4
    Dernier message: 13/09/2007, 18h24
  3. action lors de la fermeture d'un frame
    Par gerard tarquin dans le forum wxPython
    Réponses: 2
    Dernier message: 28/05/2007, 20h34
  4. Réponses: 3
    Dernier message: 05/03/2007, 09h26
  5. Action lors de la fermeture d'une JInternalFrame
    Par dédéf dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 09/03/2006, 17h40

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