Auszug aus der GUI-Klassenhierarchie in Java (nur AWT)

Werbung
GUI-Klassenhierarchie in Java (nur AWT), Hauptblatt
(neben dem Hauptblatt gibt es ein Menüblatt)
Zum Importieren des AWT = Abstract Window Toolkit sind folgende Befehle erforderlich:
import java.awt.*;
import java.awt.event.*;
Graphics ist eine sehr mächtige
Klasse! Sie hat viele draw-Methoden,
z. B drawImage(). Siehe Doku.
Der Weg zum Ziel: Durch Vererbung
neue Components erschaffen und dort
die paint()-Methode überschreiben.
Siehe z. B. bei der Klasse Canvas
(ganz rechts).
viele weitere
GUI-Komponenten
(siehe Literaturhinweis unten
rechts)
Component
Canvas
public void paint (Graphics g)
public void repaint ()
public boolean isDisplayable()
Leere Komponente. Einziger
Zweck: Davon erben, paint
überschreiben und so im
Canvas malen oder Bilder
anzeigen. Dabei die Methoden
von Graphics verwenden.
Diese Pfeile sollen für "ist ein"
(Vererbung) stehen, obwohl
das nach UML-Standard nicht
korrekt ist: Die Pfeilspitze darf
nicht ausgemalt sein.Aber die
Textverarbeitung konnte es
nicht besser.
Label
public void setText
(String text)
Container
Button
public void add (Component c)
public void setLabel (String s)
// Laut Doku ist der Rückgabewert "Component", aber warum,
// weiß ich nicht. Tut einfach so, als ob er void wäre.
public void setLayout (LayoutManager m)
// LayoutManager ist ein Interface. Jede Instanz einer Klasse, die
// LayoutManager implementiert, ist auch eine Instanz von
// LayoutManager. In diesem Sinne wirkt "implements" wie
"extends".
public void addActionListener
(ActionListener a)
// ActionListener ist ein Interface. Jede
// Instanz einer Klasse, die ActionListener
// implementiert, ist auch eine Instanz von
// ActionListener. Und nachdem diese beim
// Button angemeldet worden ist, wird nach
// jedem Klick ihre actionPerformed()// Methode ausgeführt!
Window
public void addWindowListener
(WindowListener w)
// WindowListener ist ein Interface. Jede
// Instanz einer Klasse, die WindowListener
// implementiert, ist auch eine Instanz von
// WindowListener.
public void pack()
// Das Fenster und alle seine Subkomponenten
// "displayable" machen
public void hide()
public void show()
Panel
// "Panel is the simplest container class.A panel provides
// space in which an application can attach any other
// component, including other panels.
Applet
public void init ()
public void paint (Graphics g) //von Component
// Java-Applets haben Applet als Oberklasse. Nahezu jedes
// Applet überschreibt die init()- und die paint()-Methode.
// init() wird automatisch vom Konstruktor aufgerufen.
// paint() kann beliebig oft ausgeführt werden. Im Code dafür
// aber nicht paint(), sondern repaint() benutzen!
Frame
// "A Frame is a top level window with a title and
// a border" (Java-Doku)
// Daran denken, dass Änderungen des Fensters oder
// der darin einthaltenen Komponenten
// oft erst nach einem repaint() sichtbar werden!
public void setMenuBar (MenuBar m)
Bei Verwendung von AWT ist die Hauptkomponente eines
Java-GUI-Programms entweder ein Frame oder ein Applet.
Dort werden alle anderen GUI-Elemente eingefügt.
Um das Prinzip der GUI-Programmierung zu verstehen,
reichen wenige Komponenten aus. Weitere GUI-Elemente
findet ihr in der Literatur, z. B. Guido Krüger:
Handbuch der Java-Programmierung ("Go To Java 2"),
Kapitel 32. Dieses Online-Buch findet ihr auf eurer CD.
Herunterladen