Partage
  • Partager sur Facebook
  • Partager sur Twitter

Click droit sur un Jtree

récupérer le TreePath du noeud victime d'un mouseEvent

    14 août 2009 à 11:28:29

    Bonjour.

    Je voudrai pouvoir réagir à un clic droit sur mon JTree (pour pouvoir lui donner en gros les mêmes conséquences qu'un clic gauche, entre autre, et en plus agir dessus à ma guise, à partir du treePath de l'élément right-cliqué.

    Comment cela est il possible?

    Merci
    • Partager sur Facebook
    • Partager sur Twitter
      14 août 2009 à 11:47:57

      Ton message est totalement hors sujet! Mon problème n'est pas aussi simple que l'écoute d'un clic! Lorsque j'écoute les évènements sur le JTree, la methode MouseEvent.getSource() me retourne le Jtree et non le noeud cliqué...

      J'ai bien sûr fait des recherches avant de poster ce sujet...

      jonkille, il ne faut pas que les mauvais résultats du psg te rendent aigri au point de répondre aussi sèchement sans t'intéresser au problème posé par les messages!
      • Partager sur Facebook
      • Partager sur Twitter
        14 août 2009 à 11:59:37

        d'après ce que je lis de ton message tu veux détecter le clic droit pour qu'il fasse la même chose que le clic gauche plus une autre action donc je répond en conséquence.

        Après je vais peut être dire encore une connerie parce que les arbres et moi...mais si tu met le MouseListener sur les noeud il te retournera les noeuds normalement non ?
        Après je sais pas si c'est possible

        <hs> les trolls foot c'est pas sur ce forum dsl </hs>

        • Partager sur Facebook
        • Partager sur Twitter
          14 août 2009 à 12:12:19

          Le problème, c'est que dans mes objets contenus dans l'arbre, j'ai des composants swing. Et je n'ai aucune envie que ceux ci écoutent les clics: je veux que ce soit la ligne du jTree concerné.

          Là j'entre dans des suppositions! le problème est donc de faire écouter les clics à la ligne du jtree correspondante (il doit bien exister un objet qui correspond à ce truc non?) Le problème, c'est que je ne vois pas lequel!

          <hs>On va pas multiplier les messages sur le forum pour rien! Autant utiliser ceux ci!
          D'ailleurs, tu as le bonjour de Emir Spahić! :D</hs>
          • Partager sur Facebook
          • Partager sur Twitter
            14 août 2009 à 12:21:26

            tu veux donc agir sur des Treenode si j'en crois la javadoc ?

            <hs> dsl de te décevoir je suis pas un fervent supporter qui prend à coeur tous les résultats de l'équipe qu'il soutient. Je joue pas ma vie sur un match de foot </hs>
            • Partager sur Facebook
            • Partager sur Twitter
              14 août 2009 à 14:09:35

              Pas vraiment sur les TreeNodes (d'ailleurs, on ne peut pas leur ajouter de Mouse Listener).

              Non, non, dans mes "délires", j'imagine que chaque noeud de l'arbre sur ma gui, tu sais, chaque ligne de l'arbre qui peut soit apparaitre en surbrillance, soit ne pas surbriller, soit avoir une icône "développée" sur sa gauche, soit une icône non développée, enfin j'imagine que c'est noeuds sont des objets swing indépendants, auxquels ont peut accéder, et sur lesquels on peut placer un mouseListener!

              Le souci, c'est que tout ça, je me l'imagine, et qu'en fouillant la Javadoc, je ne trouve rien de concret.

              <hs>Au contraire, tu ne me déçois pas du tout, c'est tout à ton honneur!</hs>
              • Partager sur Facebook
              • Partager sur Twitter
                17 août 2009 à 9:20:08

                Avec ton MouseEvent tu peux savoir lequel a été utilisé.

                MouseEvent...

                class Ecouteur implements MouseListener
                {
                    public void mouseRelease(MouseEvent e)
                    {
                        if(e.getButton()==MouseEvent.BUTTON1)
                        {
                		//Bouton 1
                        }
                	else if(e.getButton()==MouseEvent.BUTTON2)
                	{
                		//Bouton 2
                	}
                	else if(e.getButton()==MouseEvent.BUTTON3)
                	{
                		//ya meme le troisieme
                	}
                    }
                }
                
                • Partager sur Facebook
                • Partager sur Twitter
                  18 août 2009 à 8:54:46

                  Merci, mais là n'est pas le problème. Je cherche à savoir sur quel élément de mon JTree le clic survient.

                  Pour cela, j'aimerais placer mon écouteur sur un élément, mais je ne sais pas lequel (il ne me semble pas que ce soit ni le JTree, ni le TreeNode [où alors, je ne sais pas comment récupérer cette information, et pourtant j'ai passé un certain temps à chercher l'information])
                  • Partager sur Facebook
                  • Partager sur Twitter

                  Click droit sur un Jtree

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown