bonjour,

voila j'ai surchargé les classe JBarMenu, JMenu et JItemMenu pour pouvoir créer des menus plus facilement par la suite de cette facon :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
 
String[] menus = {"Menu", "Configuration", "?"};
String[][] sousMenus = { {"Charger JeuxDeTests", "Nouveau JeuxDeTests", "Supprimer JeuxDeTests", 
 "", "Nouveau TypeClient", "Nouveau TypeOperation", 
  "", "Quitter"},
{"Fichier Tiers", "Fichier Compte", "Fichier Opération"},
{"A propos"}};
 
//On crée une nouvelle instance de notre fenêtre
Fenetre gui = new Fenetre(menus, sousMenus);
Ca, ca va, tout fonctionne.

Maintenant je veux mettre des évènements sur les ItemMenu dont voici ma class:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
 
public class ItemMenu extends JMenuItem implements ActionListener{
 
	private Fenetre fenetre;
 
	public ItemMenu(String name, Fenetre fenetre){
		super(name);
		fenetre = fenetre;
		this.addActionListener(this);
	}
 
	public void setPanel(){
		this.fenetre.listeJDT.setVisible(false);
	}
 
 
 
	public void actionPerformed(ActionEvent e){
		ItemMenu itemMenu = (ItemMenu)e.getSource();
		String action = itemMenu.getText();
 
		if(action.equals("Quitter"))	
			System.exit(0);
 
		if(action.equalsIgnoreCase("Charger JeuxDeTests"))
			itemMenu.fenetre.setPanel();
 
	}
 
 
}
Et la disons que le bouton Quitter fonctione mais pas le deuxieme.

J'ai une liste d'erreur que je ne comprends pas vraiment sous eclipse :
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at interfaceGraphique.ItemMenu.actionPerformed(ItemMenu.java:31)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Quelqu'un pourrait-il m'expliquer?