cemoi58
Messages postés3Date d'inscriptionmercredi 7 avril 2004StatutMembreDernière intervention11 octobre 2005
-
6 sept. 2004 à 15:36
cs_GodConan
Messages postés2113Date d'inscriptionsamedi 8 novembre 2003StatutContributeurDernière intervention 6 octobre 2012
-
6 sept. 2004 à 23:01
Bonjour à tous!
Je voudrais dessiner une image dans un JPanel. Ce JPanel est lui même contenu dans une JDialog. Pour cela, j'écris le code suivant :
JDialog Toto = new JDialog();
Toto.setLocation(0, 0);
Toto.setTitle("Ma fenêtre");
Image PortionImage;
//
...Partie du code où j'attribue une image à ma variable PortionImage
//
JPanel PanneauApercu = new JPanel();
Graphics g =PanneauApercu.getGraphics();
g.drawImage(PortionImage,10, 10,50, 50, null);
Toto.getContentPane().add(PanneauApercu);
Toto.setSize(200,200);
Toto.setVisible(true);
La fenêtre s'affiche correctement quand je supprime la ligne "g.drawImage(PortionImage,10, 10,50, 50, null);" , mais quand je la met ou que je la remplace par "g.drawString("Coucou",20,20);" , l'exception "java.lang.NullPointerException" est levée.
cs_GodConan
Messages postés2113Date d'inscriptionsamedi 8 novembre 2003StatutContributeurDernière intervention 6 octobre 201212 6 sept. 2004 à 23:01
GodConan :clown)
Ben vi la reponce est simple : tant que ton panel n est pas visible le contex graphic n est pas disponible... donc null
la soluce comme le suggere wargre serai de faire ton PanelImage heriter de JPanel (par exemple) et d en surcharger la methode paint( graphics g ).
Methode ds laquelle tu fait ton draw et n oublie pas d appeler la methode super au debut... (super.paint( g );) sinon tu aura des ptt surprise ( enfin tu pourra tester plus tard .. ;o) )