Witam.
Nie umiem dojść co jest złego w takim kodzie:
import javax.swing.JApplet;
import java.awt.Image;
import java.awt.Graphics;
public class Testgraf extends JApplet {
Image img;
Graphics gimg;
Grafika element=null;
@Override
public void init() {
img = createImage(50, 50);
gimg = img.getGraphics();
element = new Grafika(img);
}
@Override
public void start(){
}
@Override
public void stop(){
}
public void run() {
while(true){
while(true)repaint();
}
}
}
</ code>
i drugi plik Grafika.java:
< code =java >import java.awt.Image;
import javax.swing.JApplet;
import java.awt.Graphics;
class Grafika extends JApplet{
Image obraz;
Graphics graf ;
public Grafika(Image obrazek){
obraz = createImage(50, 50);
graf = this.obraz.getGraphics();
graf.drawRect(1, 1, 20, 20);
graf.drawImage(obrazek, 0, 0, rootPane);
}
}</ code>
Kompilacja jest OK. Ale po uruchomieniu od razu jest błąd
java.lang.NullPointerException
at Grafika.<init>(Grafika.java:14)
at Testgraf.init(Testgraf.java:14)
at sun.applet.AppletPanel.run(AppletPanel.java:424)
at java.lang.Thread.run(Thread.java:662)
Chodzi mi aby w klasie Testgraf stworzyć obiekt typu Grafika i podczas inicjalizacji pomalować obiekty typu Image.
?