lina-: NullPointer bei addImage

Beitrag lesen

moin Thorsten F. :)

public void addImage(Image img,URL imgUrl)
{
  img = getToolkit().getImage(imgUrl);
  MediaTracker mt = new MediaTracker(this);
  mt.addImage(img,0);
     try {mt.waitForAll();}
     catch (InterruptedException e) {}
}

Vorher wurde das Bild korrekt dargstellt, jetzt jedoch bekomme ich eine Nullpointer-Exception im paint und zwar genau da, wo ich das Bild zeichne:
g.drawImage(img,100,100,50,30,this);

Woran liegt das?

Das liegt daran, dass das img, das du zeichnen willst keinen Wert hat ;)
Nein im Ernst: img ist null, weil du in deiner Methode zwar dem Objekt einen Wert zuweist - dies aber nicht öffentlich bekannt gibst.

Du übergibst zwar ein Image-Objekt an die Methode - aber nicht wieder zurück an den Konstruktor. Egal wo du nun die paint-Methode aufrufst - sie wird nie wissen, dass img tatsächlich ein Bild hat. Dieses Wissen behält addImage für sich *g*

Versuchs mal mit nem return :)

liebe Grüße aus Berlin
lina-

--
Dinge aus dem linaland
Self-Code: ie:% fl:( br:^ va:) ls:/ fo:| rl:( ss:) de:] js:| mo:)