J'ai un JTree qui affiche un JPopupMenu lorsque je clique droit sur des nœuds dans le JTree. Quel est le meilleur moyen de masquer/afficher ou activer/désactiver certains JMenuItems dans mon JPopupMenu basé sur le nœud sélectionné dans le JTree?Afficher/Masquer JMenuItems dans un JPopupMenu basé sur la sélection d'un JTree
La première solution qui est venue à l'esprit était d'ajouter un TreeSelectionListener au JTree pour l'événement 'value changed'. Dans le code de gestion d'événement, j'utiliserais la méthode getNewLeadSelectionPath() de TreeSelectionEvent pour obtenir le chemin de la sélection la plus récente, et utiliser getLastPathComponent() de l'objet TreePath obtenu pour obtenir le nœud sélectionné. De là, j'aurais une série d'instructions IF qui accèdent à mon objet JPopupMenu et effectuent les modifications nécessaires pour masquer/afficher des JMenuItems spécifiques. Cependant, quelque chose ne va pas, et j'ai donc décidé de demander à SO s'il y avait une meilleure approche.