# Panel/JPAnel createImage() Exception



## Warrior7777 (27. Mai 2012)

Hallo miteinander
ich bin gerade dran, ein eigenes Spiel zu programmieren. Zuerst habe ich das Spielfeld als Frame implementiert. Da hat alles gut funktioniert. Jetzt wollte ich das Spiel als Panel/JPanel umsetzen und von einem Hauptprogramm aus starten. Das Hauptprogramm stellt das Hauptmenü und die Untermenüs zur Verfügung und startet auch das Spiel über die Levelauswahl.
Und nun das Problem: wenn ich ein Doppelpuffer Bild über createImage() beschaffen will, bekomme ich eine NullPointerException. Wieso passiert mir das bei einem (J)Panel, aber nicht bei einem Frame?
Danke für die Antworten!


----------



## vanny (27. Mai 2012)

ohne Code?


----------



## Warrior7777 (1. Jun 2012)

Entschuldigung (auch für die Verspätung). Hier der Konstruktor:


```
class GameField extends Panel{
public GameField(Level level, int width, int height){
		super();

		setBackground(Color.BLACK);

		this.setVisible(true);

		frameGraphics=getGraphics();
		
		dbImage=createImage(WIDTH, HEIGHT);

		setVisible(true);
		
		grids=createImage(WIDTH, HEIGHT);
	
		Graphics gridGraphics=grids.getGraphics();
		gridGraphics.setColor(Color.blue);
		for(int i=0; i*XU<=WIDTH; i++){
			gridGraphics.drawLine(i*XU, 0, i*XU, HEIGHT);
		}
		for(int i=0; i*YU<=HEIGHT; i++){
			gridGraphics.drawLine(0, i*YU, WIDTH, i*YU);
		}
	}
```
Wenn ich das so lasse, aber aus Frame statt aus Panel ableite, funktioniert es. Die Null-Pointer-Exception entsteht erst beim Zugriff auf grids(das übrigens für Debug-Zwecke ein Gitternetz zeichnet). Bin sehr dankbar für Hilfe!


----------

