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

Composants Java Discussion :

[JTree] recupérer un noeud par simple survole de la souris


Sujet :

Composants Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 20
    Points : 24
    Points
    24
    Par défaut [JTree] recupérer un noeud par simple survole de la souris
    Bonjour,

    voilà l'objectif:

    Je possède un JTree comportant de nombreux noeuds. Je souhaiterai qu'un noeud soit selectionné lorsque le pointeur de souris se trouve dessus et non quand je clique dessus...

    quelqu'un a t'il une solution ? ou une piste de solution? car j'ai beau fouiller la class JTree et ses listeners, je n'y parviens pas.

    Merci

    ++

  2. #2
    Membre actif
    Inscrit en
    Avril 2004
    Messages
    238
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 238
    Points : 265
    Points
    265
    Par défaut
    Tu fais un
    addMouseMotionListener(tonMouseMotionListener) sur ton JTree.

    Et dans mouseMoved() de ton mouseMotionListener tu met un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    if (tonTree.getRowForLocation(evt.getX(), evt.getY()) == -1)
      return null;
    else{
      TreePath curPath = getPathForLocation(evt.getX(), evt.getY());
      TonObjetNoeud objetNoeud = (TonObjetNoeud)curPath.getLastPathComponent();
      //action a faire avec ce noeud
    }
    En esperant que ca marche

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Salut Alex,

    Avec un mouselistener tu peux récupérer la position de ta souris et JTree possède une méthode qui retourne le path du noeud le plus proche d'une position donnée: getClosestPathForLocation(), path dont tu peux récupérer le dernier élément grace à getLastPathComponent() et le tour est joué!

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 20
    Points : 24
    Points
    24
    Par défaut [Resolu][JTree] recup un noeud par survole de la souris
    oki...j'ai essayé
    et ça marche parfaitment...j'ai essayé la methode de klemouf en premier.

    Peut etre que celle de narfiggo marche aussi, mais j'ai pas testé... mais bon l'idée est sensiblement la meme.

    Merci à vous deux

    ++

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

Discussions similaires

  1. [XPATH] Position d'un noeud par rapport à la racine ?
    Par DemonKN dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 22/10/2008, 18h51
  2. [JTree] Selection d'un noeud par programme
    Par Stef-78 dans le forum Composants
    Réponses: 1
    Dernier message: 14/12/2006, 10h40
  3. [JTree] Récupérer le noeud sélectionné, sans événement
    Par Bobsinglar dans le forum Composants
    Réponses: 4
    Dernier message: 26/05/2005, 18h06
  4. [Jtree] revenir au noeud precedemment selectionné
    Par maxxou dans le forum Composants
    Réponses: 4
    Dernier message: 03/01/2005, 20h10
  5. Réponses: 3
    Dernier message: 27/07/2004, 12h01

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