Haupfenster erzeugen#
Bisher wurde die Anwendung gestartet und eine Grundfunktionen bereitgestellt. Die Grundanwendung wird um das Hauptfenster erweitert. In diesem Hauptfenster können alle weiteren Komponenten und diverse Funktionen untergebracht werden.
In der Grundanwendung wird im Bereich von hochfahren() das neue Fenster aufgerufen.
hauptfenster = new FilmverwaltungFenster("Hauptfenster", image);
Der erste Parameter bildet später den Fenstertitel. In diesem Fall wird getAnwendungstitel() ignoriert. In dem Projektverzeichnis hier:
/home/.../Filmverwaltung/src/de/tth/filmverwaltung
wird eine Bilddatei mit gleichen Namen wie die Startdatei der Applikation angelegt. Jedoch wird die Dateierweiterung einer Bilddatei verwendet. Diese Bilddatei wird als Splash Screen und als Icon oben links im Fenster verwendet.
Programmdatei: Filmverwaltung.java
Bilddatei: Filmverwaltung.jpg
Der Aufruf von launch() wird um die Anzahl der Splash Screen Schritte ergänzt.
Anwendung.launch( Filmverwaltung.class,5);
Diese Schritte werden für den Fortschrittsbalken benötigt. Da die Anzahl der Schritte meistens nicht sofort richtig angegeben werden, kann hier irgendeine (kleine) Zahl eingegeben werden. Die richtige Anzahl der Schritte wird in der Konsole ausgegeben. Diese Anzahl kann dann im Quellcode eingetragen werden.
Nun folgt die komplette Datei: Filmverwaltung.java
//************************* //AUTOR : Thomas Thießen //DATUM : 03.06.2011 //ÄNDERUNG : 03.06.2011 //************************* package de.tth.filmverwaltung; import de.bayen.lugframework.Anwendung; public class Filmverwaltung extends Anwendung { @Override protected void hochfahren() { hauptfenster = new FilmverwaltungFenster("Hauptfenster", image); super.hochfahren(); } @Override public String getAnwendungstitel() { return "Filmverwaltung"; } public static void main(String[] args) { Anwendung.launch( Filmverwaltung.class,5); } }
Für das Hauptfenster generieren wir nun eine eigene Klasse, die später erweitert werden kann.
hauptfenster = new FilmverwaltungFenster("Hauptfenster", image);
Diese Klasse wird von der Klasse Fenster aus dem LugFramework (extends Fenster) abgeleitet.
public class FilmverwaltungFenster extends Fenster
Anschließend stehen alle Funktionen dieser Klasse zur Verfügung.
Auch hier wird sofort hochfahren() überschrieben und kann später ergänzt werden.
protected void hochfahren()
Dies ist der komplette Quellcode der Datei Filmverwaltung Fenster.java
//************************* //AUTOR : Thomas Thießen //DATUM : 12.06.2011 //ÄNDERUNG : 12.06.2011 //************************* package de.tth.filmverwaltung; import java.awt.Image; import de.bayen.lugframework.Fenster; public class FilmverwaltungFenster extends Fenster { public FilmverwaltungFenster(String name, Image image) { super(name, image); } @Override protected void hochfahren() { super.hochfahren(); } }
Ein kleiner Tipp am Rande: In der Super-Methode wird ein Borderlayout eingestellt, die Toolbar erzeugt und da hineingesetzt. An dieser Stelle sollte nicht nochmals ein Layoutmanager verwendet werden. Dieser Layoutmanager würde z.B. die Toolbar überlager.