1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
1.Gestion du clique droit
jtree.addMouseListener(
new MouseAdapter() {
public void mouseReleased(MouseEvent e) {
//Gestion du clic droit...evenement pas répéré de la même manière sous windows ou linux, d'où 2 cas
//La première fonctionne sous windows, mais pas sous linux
if (e.isPopupTrigger()) {
//Action a faire
}
//La seconde fonctionne a priori sous les deux systèmes
else if(SwingUtilities.isRightMouseButton(e)) {
//Action a faire
}
}
}
);
2.Gestion d'un événements de type ActionListener
public void actionPerformed(ActionEvent ae) {
//Permet de connaître le dernier élémnets sélectionné du Jtree
DefaultMutableTreeNode node = (DefaultMutableTreeNode) jtree.getLastSelectedPathComponent();
//Test si le noeud n'est pas vide, et n'est pas la racine
if ( (node != null) && (!node.isRoot()) {
//Récupération de l'objet contenu dans le Jtree
MonType mt = (MonType)node.getUserObject();
}
}
3.Ecoute d'un Jtree (change d'item sélectionné)
Implémenter TreeSelectionListener
Puis surcharger la méthode:
public void valueChanged(TreeSelectionEvent e) {
DefaultMutableTreeNode node = (DefaultMutableTreeNode) jtree.getLastSelectedPathComponent();
if ( (node != null) && (!node.isRoot())) {
node.getUserObject();
}
}
4.Sélection d'un noeud
jtree.addMouseListener(new MouseAdapter() {
public void mouseReleased(MouseEvent e) {
//Récupère le dernier noeud sélectionné
DefaultMutableTreeNode node = (DefaultMutableTreeNode) jtree.getLastSelectedPathComponent();
if ((node != null) && (!node.isRoot())) {
//action a réaliser
}
}
});
5.Gestion du survole
jtree.addMouseMotionListener(new MouseMotionAdapter() {
public void mouseMoved(MouseEvent e) {
//Récupère le chemin du noeud survolé en fonction des coordonnées de la souris
TreePath selPath = jtree.getPathForLocation(e.getX(), e.getY());
if (selPath != null) {
//A partir du chemin, on récupère le noeud
DefaultMutableTreeNode node = (DefaultMutableTreeNode) selPath.getLastPathComponent();
if ((node != null) && (!node.isRoot())) {
//action a faire
}
}
}
}); |