NullPointerException

Résolu
cs_castor62 Messages postés 52 Date d'inscription dimanche 1 décembre 2002 Statut Membre Dernière intervention 19 septembre 2007 - 13 juin 2007 à 10:55
cs_castor62 Messages postés 52 Date d'inscription dimanche 1 décembre 2002 Statut Membre Dernière intervention 19 septembre 2007 - 13 juin 2007 à 17:29
Bonjour,

J'ai une petite erreur NullPointerException en lancant mon application !

J'ai créé un UI pour mon Jtabbedpane :

public class MyCloseTabbedUI extends BasicTabbedPaneUI{
        public MyCloseTabbedUI()
        {
            super();
            tabPane.addMouseListener(new MyListenerUI());
        }

....

        public class MyListenerUI implements MouseListener {

            public void mouseEntered(MouseEvent e) {
                System.out.println(">>"+e.getX());
            }
   
            public void mouseExited(MouseEvent e) {
                System.out.println("<<"+e.getX());
            }       
           
            public void mouseClicked(MouseEvent e) {}
   
            public void mousePressed(MouseEvent e) {}
   
            public void mouseReleased(MouseEvent e) {}
           
        }
}

L'erreur survient au niveau de " tabPane.addMouseListener(new MyListenerUI()); ".
Je ne comprends pas trop pourquoi j'ai une erreur
"NullPointerException
" alors que ma classe listener est définie...

Je suis à mes débuts, je vous remercie d'avance pour des indices ou des solutions...

C.

5 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 129
13 juin 2007 à 14:32
Pas tout compris là !

Fait un System.out..println(tabPane);

Es-tu verra que c'est lui qui est null, et non pas le listener.

Le tabpane n'a donc pas été instancié lorsque tu rentre dans la portion de code qui plante.
3
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 129
13 juin 2007 à 11:00
Ca vient pas de ton listener, mais de ton tabPane qui n'est pas instancié !
0
cs_castor62 Messages postés 52 Date d'inscription dimanche 1 décembre 2002 Statut Membre Dernière intervention 19 septembre 2007
13 juin 2007 à 13:30
merci,

en fait, le tabPane est par défaut dans BasicTabbedPaneUI  non ?

j'ai vu sur http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/plaf/basic/BasicTabbedPaneUI.html  :

tabPane
protected JTabbedPanetabPane

Donc est ce qu'il n'est pas définit directement dans la classe mère et qu'il se rapporte directement à l'objet qui appelle la classe MyCloseTabbedUI ?
Ce que je veux dire c'est, quand j'appelle ma classe comme ca :

MyCloseTabbedUI TabbedUI = new MyCloseTabbedUI();
MonJTabbedPane.setUI(TabbedUI);

le "tabPane" est associé directement à "MonJTabbedPane"  , non ?

Déjà un grand merci à toi pour ton aide.

R@pt0r
0
cs_castor62 Messages postés 52 Date d'inscription dimanche 1 décembre 2002 Statut Membre Dernière intervention 19 septembre 2007
13 juin 2007 à 17:28
Tu as pleinement raison !
bon, j'ai plus qu'à chercher comment recup le jtabbedpane dans la portion de code du UI !

C.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_castor62 Messages postés 52 Date d'inscription dimanche 1 décembre 2002 Statut Membre Dernière intervention 19 septembre 2007
13 juin 2007 à 17:29
Ah oui , Merci à toi !!!
0
Rejoignez-nous