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

Eclipse Platform Discussion :

Ouverture d'une fenêtre depuis la menuBar


Sujet :

Eclipse Platform

  1. #1
    Membre du Club
    Homme Profil pro
    ITESCIA
    Inscrit en
    Janvier 2013
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : ITESCIA
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2013
    Messages : 101
    Points : 55
    Points
    55
    Par défaut Ouverture d'une fenêtre depuis la menuBar
    Bonjour,

    J'ai créé une extension à 'org.eclipse.ui.menus' qui m'affiche un bouton dans la barre de menu d'eclipse. J'ai aussi associer une commande et un 'defaultHandler' qui étend 'AbstractHandler'.
    Je crée ensuite une nouvelle fenêtre depuis cette classe avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    // Return the display of eclipse
    Display display = PlatformUI.getWorkbench().getDisplay();
     
    // Define a new window to display
    Shell shell = new Shell(display);
    Mon soucis apparaît lorsque je ferme la-dite fenêtre, ça ferme aussi Eclipse :')

    J'aimerai savoir où est mon erreur et comment la corriger.

    Merci

  2. #2
    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 : 39
    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,

    A mon avis, tu as utilisé un code de dialogue utilisant un Shell qui prenait en compte la boucle de dispatch:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    while (!shell.isDisposed ()) {
    	if (!display.readAndDispatch ()) display.sleep ();
    }
    Avec un display.dispose(); après tout ça.
    Donc, tu "tues" le Display du workbench. Ça me paraît évident qu'Eclipse ne va pas du tout apprécier ça.
    Si tu jettes un oeil sur la console, il va sûrement avoir remonté une SWTException.
    Solution: Eviter de refaire une boucle de dispatch ET ne surtout pas faire un dispose du display du workbench...

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

  3. #3
    Membre du Club
    Homme Profil pro
    ITESCIA
    Inscrit en
    Janvier 2013
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : ITESCIA
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2013
    Messages : 101
    Points : 55
    Points
    55
    Par défaut
    Oui je m'en suis douté après avoir posé ma question. Du coup j'ai fais un shell.dispose() à la place du display dispose. Et maintenant je n'ai plus de problème...

    Mais n'est-ce pas dangereux comme pratique ? ou non conseillé ?

  4. #4
    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 : 39
    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
    C'est totalement dangereux de faire un dispose sur un Display. Sur un Shell (et tout autre composant SWT), c'est plus que conseillé lorsque tu dois les libérer.
    Tout est expliqué .
    Pas de questions technique par MP, les forums sont là pour ça.

  5. #5
    Membre du Club
    Homme Profil pro
    ITESCIA
    Inscrit en
    Janvier 2013
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : ITESCIA
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2013
    Messages : 101
    Points : 55
    Points
    55
    Par défaut
    Merci beaucoup pour les conseils!

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 06/06/2006, 12h13
  2. Erreur sur l'ouverture d'une fenêtre popup
    Par misa dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 25/11/2005, 15h21
  3. Ouverture d'une fenêtre ms-dos malgré l'utilisation de .pyw
    Par Ank dans le forum Général Python
    Réponses: 2
    Dernier message: 21/10/2005, 14h33
  4. Fermer une fenêtre depuis une autre...
    Par nicolb dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 23/03/2005, 10h22
  5. [HTTPS] ouverture d'une fenêtre
    Par Boosters dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 07/01/2005, 14h08

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