[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ]

Form-zu-Form Verbindungen

Der Aufruf eines neuen Formulars aus einem bereits geöffneten Formular und nicht über das Menü, ist eine beliebte Technik in der Anwendungsentwicklung. Sie bringt aber auch eine Menge an zusätzlicher Programmierarbeit und Problemen mit sich, wenn die Formulare nicht-modal sind.

Wie gebe ich Änderungen im aufrufenden Formular an das aufgerufene Formular weiter ?

Wie aktualisiere ich das aufgerufene Formular, wenn im aufrufenden Formular der Datensatz gewechselt wird ?

Wie beende ich das aufgerufene Formular, wenn ich das aufrufende Formular beende ?

Wie verhindere ich, daß hängende Referenzen, der Alptraum eines jeden VFP-Programmierers, überbleiben, die meine Anwendung zum Absturz bringen. ?

ClassMaxX Formulare, d.h. Formulare die von der ClassMaxX-Userklasse frm oder deren Ableitungen erstellt werden, besitzen ein zusätzliches Customobjekt, welches beim Instanziieren der Form ebenfalls erstellt wird (thisform.oEnv) In diesem FormEnvironmentobjekt befinden sich Eigenschaften und Methoden, die dafür zuständig sind, daß Form-zu-Form Verbindungen sauber erstellt und auch wieder abgebaut werden. Es gibt keine Begrenzung der Verschachtelungstiefe der Formularaufrufe. Jedes Formular kennt seinen “Vater”, von dem es aufgerufen wurde, und seine “Kinder”, die es selbst aufgerufen hat. Kaskadierte Refresh() und Destroy()-Methoden sind vorhanden und laufen automatisiert ab.

Die Eigenschaften und Methoden der kiFormEnvironment-Klasse:  

 

Standardmäßig rufen Sie im ClassMaxX ein Formular aus dem Menü oder der Toolbar mit der Methode:

    oApp.DoForm(<formularname>)

auf. Wenn Sie jetzt ein Formular aus einem bereits geöffneten Formular aufrufen wollen, z.B. in der Click-Methode eines Buttons des Formulars, um weitere Informationen zu diesem Datensatz anzuzeigen, tun Sie dies mit dem Aufruf:


    thisform.oEnv.DoForm(<formularname>

[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ]