Essaie avec un JPopupMenu contenant des JMenuItem:
tree.setComponentPopupMenu(popup);
Au JMenuItem pour la suppression du noeud sélectionné tu peux par exemple ajouter cet ActionListener:
1 2 3 4 5 6 7
| miDelete.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
DefaultTreeModel model = (DefaultTreeModel) tree.getModel();
MutableTreeNode node = (MutableTreeNode) tree.getLastSelectedPathComponent();
model.removeNodeFromParent(node);
}
}); |
Si tu veux changer la sélection avec le click droit tu peux ajouter un "mouse listener" et faire ceci dans "mousePressed":
1 2 3 4 5 6 7
| if (SwingUtilities.isRightMouseButton(evt)) {
TreePath path = tree.getPathForLocation(evt.getX(), evt.getY());
if (path == null) {
return;
}
tree.setSelectionPath(path);
} |
Partager