Programm Animation4.java
Interface ActionListener
•
Das Interface ActionListener fordert nur eine Methode – actionPerformed(ActionEvent e)•
e.getActionCommand() liefert String, der gedrückten Knopf beschreibt•
e.getSource() liefert Referenz auf Objekt, das das Ereignis e ausgelöst hat gezielter Vergleich mit bestimmten KnöpfenKatz und Maus
Interface MouseListener
•
Das Interface MouseListener enhält folgende Methoden:★
mousePressed(MouseEvent e): Maus-Taste gedrückt★
mouseReleased(MouseEvent e): Maus-Taste losgelassen★
mouseClicked(MouseEvent e): Maus-Taste„geklickt“ (drücken und loslassen)
★
mouseEntered(MouseEvent e): Maus-Zeiger bewegt sich in auslösende Komponente (z.B. Fenster) hinein★
mouseExited(MouseEvent e): Maus-Zeiger verlässt auslösende Komponente (z.B. Fenster)•
e.getX(), e.getY() liefern ints, die den Ort des Ereignisses angeben•
addMouseListener(this): Listener beim Fenster anmeldenInterface MouseMotionListener
•
Das Interface MouseMotionListener enhält folgende 2 Methoden:★
mouseMoved(MouseEvent e): Maus bewegt★
mouseDragged(MouseEvent e): Maus bei gedrückter Maus- Taste bewegt•
e.getX(), e.getY() liefern ints, die den Ort des Ereignisses angeben•
addMouseMotionListener(this): Listener beim Fenster anmeldenProgramm Maus.java
Zu guter Letzt:
Applets
Erstes Beispiel als Applet
/// Datei: FirstApplet.java
import java.awt.*; // Abstract Window Toolkit (awt) import java.applet.*; // und Applet-Umgebung einbinden
public class FirstApplet extends Applet { // erweitert die Klasse Applet // Keine main-Methode, Konstruktor kann auch weggelassen werden
public FirstApplet() // Der Konstruktor dieser Klasse { // (legt nur Farben fest)
setBackground(Color.black); // Schwarzen Hintergrund und setForeground(Color.white); // weissen Vordergrund setzen }
public void paint(Graphics g) // Diese Routine wird zum Neuzeichnen { // des Fensterinhalts aufgerufen
g.setFont(new Font("SansSerif", Font.BOLD, 36)); // Schrift waehlen g.drawString("Hier bin ich !!!", 20, 80); // Text ausgeben
} }
Erstes Beispiel als Applet
•
Wir benötigen eine HTML-Einbindung FirstApplet.html (kann auch in Web-Seite eingebunden werden):•
legt Code-Quelle, Breite und Höhe der Zeichenfläche des Applets fest•
Ausführen z.B. mitappletviewer FirstApplet.html
(statt appletviewer kann auch ein Web-Browser verwendet werden)
<applet code="FirstApplet.class" width=300 height=120></applet>
•
kleine Änderungen:★
Kopf: Applet-Umgebung einbinden, Vererbung von Superklasse Applet★
WindowListener ist überflüssig★
Referenzen zu Frame entfernen: super(), setSize(), setLocation()★
Methode main() wird nicht benötigtMaus-Demo als Applet
Von Java-Programmen zu -Applets
•
void init() wird nach dem Laden des Appletsaufgerufen – hier keine langen Rechnungen – für längere Rechnung: Thread starten
•
Startmethode: void start() startet Applet wieder (z.B. nach Anhalten durch Browser)•
void stop() wird zum Anhalten des Appletsaufgerufen (z.B. beim Verlassen der Web-Seite – hier Animation anhalten)
•
void destroy() wird zu Beenden des Appletsaufgerufen – hier Aufräumarbeiten: Threads beenden, andere komplizierte Objekte (z.B. Fenster) entfernen
Lebenszyklus eines Applets
Animation als Applet