Fehler im handleEvent
-
Also ich hab mich vor ner guten Stunde entschlossen, mal etwas java zu lernen..
Eigentlich mach ich diese Sprache garnicht
Wie dem auch sei. Ich habe kein Interesse an Applets, sondern möchte portable GUI-Progs nutzen.
Mein Programm zum Testen sieht momentan so aus :
import java.awt.*; public class test extends Frame { private Graphics gr; public int DrawPoint (int X, int Y) { this.gr.drawRect ( X, Y, 1, 1); return 0; } public boolean handleEvent (Event evt) { switch(evt.id) { case Event.WINDOW_DESTROY: System.exit(0); break; case Event.MOUSE_DOWN: DrawPoint ( evt.x, evt.y); break; } return super.handleEvent(evt); } public static void main(String args[]) { test myWin = new test(); myWin.resize(640, 480); myWin.setTitle("Mein Java Test!"); myWin.show(); } }
klicke ich nun auf mein Fenster, passiert dieses hier.
Exception occurred during event dispatching:
java.lang.NullPointerException
at test.DrawPoint(test.java)
at test.handleEvent(test.java)
at java.awt.Window.postEvent(Window.java:451)
at java.awt.Component.dispatchEventImpl(Component.java:1776)
at java.awt.Container.dispatchEventImpl(Container.java:935)
at java.awt.Window.dispatchEventImpl(Window.java:443)
at java.awt.Component.dispatchEvent(Component.java:1704)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:63)
Drücken Sie eine beliebige Taste . . .Werwiewaswannwo und warum ist das ?
Ich gebe zu, ich habe noch nicht sehr viel Hintergrundwissen zu java (arbeite ja dran ) also schlagt mich nicht gleich tot
-
Du initialisierst gr nicht. Mach das mit
gr = this.getGraphics();
-
Öhm.. klar.
Bevor ich auf nem Device was schreiben kann, muss ich ihm sagen, welches Device das ist ^^