Java-Kurs - 14. Übung Benutzeroberflächen und Graphik Besprechung der Hausaufgabe Zeichen von Polygonen Interaktion - Reaktion auf Mausklick
Exkurs: Starten von Java-Programmen ohne Forte DOS-Eingabeaufforderung cd m:\Java-Aufgaben\Aufgabe13 javac Nikolaus.java //Kompilieren java Nikolaus //Ausführen javac bzw. java mit Pfad (z.B. d:\programme\jdk1.3\bin), falls nicht in PATH-Umgebungsvariable
Exkurs: Starten von Java-Programmen ohne Forte Alternative: Batch-Datei, z.B. start.bat: cd m:\Java-Aufgaben\Aufgabe13 java Nikolaus Verknüpfung der Endung class mit java sinnlos (falsches Verzeichnis, Endung .class muss weg)
Hausaufgabe 11 Zeichnen Sie in einem Frame das Haus vom Nikolaus Lösung: siehe Dateien Nikolaus.java, Nikolaus.form
Wiederholung: die Methode Paint Die Ausgabe in ein Fenster sollte durch die Überlagerung der Methode paint erfolgen (Polymorphismus) paint bekommt beim Aufruf eine Instanz der Klasse Graphics übergeben. (diese referenziert die eigentliche Zeichenfläche) Definition von paint: public void paint (Graphics g) { .... }
Zeichnen von Polygonen Methode drawPolygon(....) Methode von Graphics (Aufruf in paint(Graphics g)) drawPolygon(x-Array ,y-Array, Anzahl_Punkte); Beispiel: int[] x = {2 , 7 , 9}; int[] y = {5 , 9 , 22}; g.setColor(Color.blue); g.drawPolygon(x ,y , 3); fillPolygon(...) analog
Abfangen eines Maus-Klick Forte - Explorer: Form - rechte Maustaste: Events - Mouse - mouseClicked Erzeugt Methode private void formMouseClicked (java.awt.event.MouseEvent evt) {..} Methode wird bei jedem Klick aufgerufen Wohin wird geklickt? Methoden getX() und getY() von MouseEvent
(Haus)aufgabe 12 Zeichen Sie in einem Frame ein Polygon, dessen Eckpunkte über Klicks mit der Maus eingegeben werden. Methoden: paint(...) von Form drawPolygon(...) von Graphics getX() und getY() von MouseEvent Dokumentation zu Java: c:\Programme\jdk1.3\docs\api\index.html