|
Um ein Fenster auf dem Bildschirm anzuzeigen, muß zunächst die passende Fensterklasse instanziert werden. Dafür kommen die Klassen Window, Frame, Dialog, Applet und FileDialog in Frage. Da die beiden Dialogklassen und die Entwicklung von Applets später behandelt werden, verbleiben die Klassen Window und Frame. Beide Klassen haben unterschiedliche Konstruktoren:
public Frame() public Frame(String title) |
java.awt.Frame |
public Window(Frame parent) |
java.awt.Window |
Ein Objekt der Klasse Frame kann demnach parameterlos oder mit einem String, der den Titel des Fensters angibt, erzeugt werden. Bei der Instanzierung eines Window-Objekts muß dagegen das Vaterfenster übergeben werden.
Nach der Instanzierung wird die Methode setVisible aufgerufen, um das Fenster anzuzeigen:
public void setVisible(boolean visible) |
java.awt.Component |
Der Parameter visible gibt an, ob das Fenster angezeigt oder geschlossen werden soll. Wird true übergeben, so wird es angezeigt, andernfalls geschlossen. Die Aufrufsyntax ist für Frame und Window identisch, denn setVisible wurde aus der gemeinsamen Oberklasse Component geerbt. Ein Aufruf von setVisible(true) legt die Fensterressource an, stattet das Fenster mit einer Reihe von Standardeigenschaften aus und zeigt es auf dem Bildschirm an.
Um ein Fenster zu schließen, sind die Methoden setVisible(false) und dispose aufzurufen:
public void dispose() |
java.awt.Window |
setVisible(false) macht das Fenster unsichtbar, und dispose gibt die zugeordneten Windows-Ressourcen frei und entfernt das Fenster aus der Owner-Child-Registrierung.
In der aktuellen Implementierung enthält dispose am Anfang einen Aufruf von hide, durch das seinerseits ein implizites setVisible(false) aufgerufen wird. Daher wäre es auch möglich, ein Fenster mit einem einzigen Aufruf von dispose zu schließen. Der zusätzliche Aufruf von setVisible(false) ist allerdings nicht schädlich und macht die Aufgabentrennung beider Methoden deutlich. |
![]() |
|
![]() |
Das folgende Beispiel zeigt ein Programm, das einen Frame auf dem Bildschirm anzeigt, ihn nach ca. 3 Sekunden wieder entfernt und das Programm dann beendet:
|
![]() |
|
![]() |
|
Go To Java 2, Addison Wesley, Version 1.0.2, © 1999 Guido Krüger, http://www.gkrueger.com |