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 :

[JFace] récupérer les infos d'une ligne d'un TreeViewer


Sujet :

SWT/JFace Java

  1. #1
    Membre régulier

    Profil pro
    Inscrit en
    Mars 2009
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 83
    Points : 89
    Points
    89
    Par défaut [JFace] récupérer les infos d'une ligne d'un TreeViewer
    Bonjour

    Suite à ce topic, je bloque à nouveau sur une autre fonction.

    J'ai donc un treeviewer qui m'affiche sous forme de tableau des données. Je voudrais créer une fonction qui, lorsque je double clique sur une ligne (qui correspond à un noeud), récupère les string de chaque cellule de cette ligne pour pouvoir recréer un objet et travailler dessus.

    En parcourant le forum, j'ai compris qu'il fallait utiliser un mouseListener sur le tree encapsulé dans le treeviewer. J'ai vu aussi les méthodes getselection() et getItem() mais je ne vois pas trop comment organiser tout ça...

    Par exemple, est-ce qu'avec un getselection(), on peut extraire les infos de la ligne en question?

    Si vous pouviez m'éclairer un peu

    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 : 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
    Alors, comme tu utilises un TreeViewer tu as des méthodes plus facile pour réaliser ce que tu veux ^^ Et normalement, le contenu de ton TreeViewer est une liste d'objets à toi.
    Tout d'abord, sache que tu peux ajouter un IDoubleClickListener sur ton TreeViewer qui contient une seule méthode : doubleClick(DoubleClickEvent). Ce DoubleClickEvent contient la sélection de l'utilisateur. Il te suffit de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    myTreeViewer.addDoubleClickListener(new IDoubleClickListener() {
         public void doubleClick(DoubleClickEvent e) {
              ISelection userSelection = e.getSelection();
              if (userSelection instanceof IStructuredSelection) {
                   Object selection = ((IStructuredSelection) userSelection).getFirstElement();
                   // Il ne te reste plus qu'à caster l'Object selection en ce qui t'intéresse. 
                   // Pour plus de sécurité, fais un test avant :
                   if (selection isntanceof MyClass) {
                        // traitement...
                   }
              }
         }
    });
    Voilà, je pense que c'est une méthode plus facile que de passer par le Tree contenu dans le treeViewer et de lui associer le bon listener...

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

  3. #3
    Membre régulier

    Profil pro
    Inscrit en
    Mars 2009
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    Merci pour ton aide

    Je vais tester tout ça et je reviendrai poser des question ou mettre en résolu dès que ce sera fait ^^

  4. #4
    Membre régulier

    Profil pro
    Inscrit en
    Mars 2009
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    Re ^^

    ça a bien fonctionné Merci pour ton aide

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/05/2009, 10h40
  2. Réponses: 3
    Dernier message: 23/05/2007, 23h52
  3. Réponses: 2
    Dernier message: 17/04/2007, 23h35
  4. Récupérer les infos d'une colonne de type DataSet
    Par Zugg dans le forum Bases de données
    Réponses: 2
    Dernier message: 01/02/2006, 14h46
  5. Réponses: 5
    Dernier message: 23/12/2005, 19h19

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