eva/3 Application BuilderEntwicklung von eva/3 AnwendungenArbeiten mit Formularen 

Javacode generieren

eva/3 Application Builder Formulare werden in XML-Dateien mit der Dateiendung .form gespeichert. Mit der eva/3 Application Builder version 1.4.59 kann zu einer Formular-Datei zusätzlich eine Javaklasse erzeugt werden. Wird die Anwendung gestartet, so werden die Javaklassen bevorzugt verwendet um Formulare oder Teile eines Formulares zu laden. Dies bietet ebenso die Möglichkeit eigenen Javacode in die erstellte Klasse einzubringen.

Hinweis: Damit der Formular-Designer mit jedem Speichervorgang die Javaklasse erstellt bzw. aktualisiert ist die Option Generiere Java Code zu aktivieren (s. Systemeinstellungen).

Die erzeugte Javaklasse

Die Javaklasse wird mit jedem Speichern des Formulares in ein Package erzeugt, dass dem Verzeichnis, in dem das Formular abgelegt wurde gleicht. Ebenso wird der Klassenname in Anlehnung an den Formularnamen automatisch gewählt.

Die erzeugte Javaklasse leitet sich aus der Klasse SFrame ab. Soll das Formular jedoch als Dialog geöffnet werden, so ist die Erweiterung von SFrame nach SDialog händisch zu ändern. Diese Änderung bleibt auch nach erneutem Speichern des Formulars bestehen.

Aufbau / Die init() Methode

Das gesamt Formularsetup findet in der Methode public void init() statt, die vom Constructor aufgerufen wird. Befinden sich sehr viele Komponente im Formular, so wird die init Methode in mehere Methoden mit nummeriertem Namensschema unterteilt, da Javamethoden eine Gesamtgröße von 64KB nicht überschreiten dürfen.

Die init Methode sollte nicht verändert werden, da diese mit jedem Speichern des Formulares vollständig überschrieben wird!

Eigener Javacode

Eigener Javacode wird grundätzlich nicht vom Formulardesigner überschrieben. Die einzige Ausnahme bildet die Methode public void init(). Für die Unterbringung eigenen Codes eignen sich mehrere Stellen.

Die Methode public void afterLoading():
Hierbei ist zu beachten, dass das vorhandene Statement super.afterLoading unbedingt an erster Stelle stehen sollte, da sonst die fehlerfreie Formularinitialisierung nicht länger gewährleistet ist. Der darauf folgende Code wird nach dem Initialisierungsprozess ausgeführt.

Der Constructor:
Der Constructor sollte immer den Aufruf der Methode public void init() enthalten, da sonst die Initialisierung des Formulars nicht gewährleistet ist.

Die Methode public static void main(String[] args):
Diese Methode kann zum Starten des Formulars verwendet werden. Die Methode wird von eva/3 Application Builder jedoch nicht genutzt, kann jedoch zum Ausführen der Anwendung als Java-Anwendung verwendet werden.

Javaklassen für bestehende Formulare erzeugen

Soll für bestehende Formulare Javaklassen erzeugt werden, müssen diese nicht einzeln geöffnet und erneut gespeichert werden. Die Erzeugung kann über das Kontextmenü des Packageexplorer erfolgen. Ebenso können mehrere Formulare oder/und Verzeichnisse ausgewählt werden. (s. Abb. 126 )

Abb. 126: Javaklassen generieren
Abb. 126: Javaklassen generieren