Hallo, ik heb een kleine vraagje voor de java kenners over iets waar ik niet uitkom :
Ik heb een klasse die een mannetje tekent die threads extendt. Dit ziet er als volgt uit :
gBuffer initialiseer in in update() onder de hoofdklasse:
mannetje.teken() doet het dus niet (Null Pointer Exception). Weet iemand hoe ik dit op kan lossen?
Ik heb een klasse die een mannetje tekent die threads extendt. Dit ziet er als volgt uit :
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
| class Mannetje extends Thread
{
public Graphics g;
public Graphics gBuffer;
private int x, y, lengte, breedte;
private Image afbeelding;
private Thread thread;
Applet theApplet;
public Mannetje(Graphics g, Graphics gBuffer,int x, int y, int lengte, int breedte, Image afbeelding, Applet theApplet)
{
this.g=g;
this.gBuffer=gBuffer;
this.x=x;
this.y=y;
this.breedte=breedte;
this.lengte=lengte;
this.afbeelding=afbeelding;
this.theApplet=theApplet;
}
public void teken()
{
gBuffer.drawImage(afbeelding, x, y, 20, 20,theApplet);
}
public void setx(int temp)
{
x +=temp;
}
public void sety(int temp)
{
y +=temp;
}
public void run() {
while(true) {
teken();
//sleep(10);
}
}
public void sleep(int millisec)
{
try{ Thread.sleep(millisec); }
catch( InterruptedException e) {}
}
public int lengte() {
return lengte;
}
public int breedte() {
return breedte;
}
public int x() {
return x;
}
public int y() {
return y;
}
} |
gBuffer initialiseer in in update() onder de hoofdklasse:
code:
1
2
3
4
5
6
7
8
9
10
11
12
| public void update(Graphics g) {
if (buffer==null ||
(! (buffer.getWidth(this) == appBreedte
&& buffer.getHeight(this) == appHoogte))){
buffer = this.createImage(getSize().width, getSize().height);
}
gBuffer = buffer.getGraphics();
paint(gBuffer);
g.drawImage(buffer, 0, 0, this);
} |
mannetje.teken() doet het dus niet (Null Pointer Exception). Weet iemand hoe ik dit op kan lossen?