Hi,
ich habe ein JPopupMenu, in das ich JMenuItems füge. Die JMenuItems bekommen jeweils einen ActionListener, etwa so:
	
	
	
	
	
		
	
Das JPopupMenu wird eingeblendet, wenn der Benutzer auf einen bestimmten Knoten in einem JTree anklickt. Je nachdem, auf welchen Knoten geklickt wurde, sollen nun bestimmte JMenuItems deaktiviert werden. An der Stelle habe ich aber leider keine Ahnung, welche Aktion das jeweilige JmenuItem ausführt (siehe code unten, Kommentar). Wie macht man sowas?
	
	
	
	
	
		
	
			
			ich habe ein JPopupMenu, in das ich JMenuItems füge. Die JMenuItems bekommen jeweils einen ActionListener, etwa so:
		Java:
	
	JMenuItem mi = new JMenuItem(uf.name);    	
    	mi.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent arg0) {					
				executePlugin(uf);				
			}    		
    	});
    	popup.add(mi);Das JPopupMenu wird eingeblendet, wenn der Benutzer auf einen bestimmten Knoten in einem JTree anklickt. Je nachdem, auf welchen Knoten geklickt wurde, sollen nun bestimmte JMenuItems deaktiviert werden. An der Stelle habe ich aber leider keine Ahnung, welche Aktion das jeweilige JmenuItem ausführt (siehe code unten, Kommentar). Wie macht man sowas?
		Java:
	
	popup.addPopupMenuListener(new PopupMenuListener(){
			@Override
			public void popupMenuCanceled(PopupMenuEvent arg0) {
				// TODO Auto-generated method stub
				
			}
			@Override
			public void popupMenuWillBecomeInvisible(PopupMenuEvent arg0) {
				// TODO Auto-generated method stub
				
			}
			@Override
			public void popupMenuWillBecomeVisible(PopupMenuEvent arg0) {
				System.out.println("Component shown");
				JPopupMenu pm =(JPopupMenu)arg0.getSource();
				for (Component mi : pm.getComponents()) {
					
					if (mi instanceof JMenuItem)
						; // wenn das MenuItem ein Plugin startet, dann deaktivieren 
				}
				
			}
			
		}); 
				 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		