Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

(debutant) NullPointerException

3 réponses
Avatar
phillemurph
Bonjour,

Je suis en train d'apprendre à programmer en java. J'en suis à
apprendre les rudiments de la création des GUI et en créant une petite
application test, j'obtient une erreur que je n'arrive pas à régler
:o(

Le code compile sans problème mais lorsque je lance l'application
j'obtient le message d'erreur suivant :

Exception in thread "main" java.lang.NullPointerException
at java.awt.Container.addImpl(Container.java:1041)
at java.awt.Container.add(Container.java:379)
at PolRetours.go(PolRetours.java:47)
at PolRetours.main(PolRetours.java:24)


À ce que j'ai pu lire sur le web, c'est comme si l'objet mainWindows
n'était pas créé et que j'avais une référence null. Mais je ne vois
pas pourquoi... J'ai mis le code plus bas si quelqu'un peut jeter un
petit coup d'oeil:

Aussi, est ce qu'il existe une commande qui me permet d'afficher la
valeur de toutes mes variables et que je pourrais utiliser quand je
débogue mes programmes?

Merci 1000x pour votre aide et précisux conseils :)
Philippe




import java.awt.*;
import javax.swing.*;

public class PolRetours {

private JTextField champRecherche;
private JButton searchButton;
private JList resultatList;
private JFrame frame;
private JPanel panelTop;

public static void main(String[] args) {

PolRetours mainWindow = new PolRetours();
mainWindow.go();
}

public void go(){
frame = new JFrame("Quelques politiques de retour...");
panelTop = new JPanel();
champRecherche = new JTextField();
searchButton = new JButton("Rechercher");

panelTop.setBackground(Color.darkGray);
panelTop.setLayout(new BoxLayout(panelTop, BoxLayout.X_AXIS));
panelTop.add(champRecherche);
panelTop.add(searchButton);
panelTop.setSize(60,480);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(BorderLayout.NORTH, panelTop);
frame.getContentPane().add(BorderLayout.CENTER, resultatList);
frame.setSize(640,480);
frame.setVisible(true);
}
}

3 réponses

Avatar
Xavier Nayrac
a écrit :
Exception in thread "main" java.lang.NullPointerException
at java.awt.Container.addImpl(Container.java:1041)
at java.awt.Container.add(Container.java:379)
at PolRetours.go(PolRetours.java:47)
at PolRetours.main(PolRetours.java:24)


À ce que j'ai pu lire sur le web, c'est comme si l'objet mainWindows
n'était pas créé et que j'avais une référence null.




Si tu regardes ton code (et/ou si tu suis la trace, ligne 47) tu verras
que c'est la JList qui n'existe pas.

Aussi, est ce qu'il existe une commande qui me permet d'afficher la
valeur de toutes mes variables et que je pourrais utiliser quand je
débogue mes programmes?



http://java.sun.com/javase/6/docs/api/java/lang/System.html#out

--
Xavier Nayrac
http://personalbugtracker.free.fr
Avatar
Didier Couderc
Salut,

writes:

frame.getContentPane().add(BorderLayout.CENTER, resultatList);




resultatList = ?
Avatar
JavaBeaucoupMieux
"Didier Couderc" a écrit dans le
message de news:
Salut,

writes:

frame.getContentPane().add(BorderLayout.CENTER, resultatList);




resultatList = ?





String[] possibilites = {"Par la poste","Par avion","A pied","A
cheval"};
resultatList = new JList(possibilites);


A insérer ligne 32, par exemple...

:-)