Dialogdaten speichern...



  • Hallo,
    in einer dialogfeldbasierenden Anwendung werden mehrere untergeordnete Dialoge mit Create erstellt. Diese können dann über Buttons ausgewählt und angezeigt werden.
    (Die einzelnen Unterdialoge werden jedoch nicht über den Button OK beendet.)

    Ich überprüfe in jedem Unterdialog, ob sich der Wert einer Membervariable (Steuerelement) verändert hat (EnChange, etc.) und setze dementsprechend ein FLAG.

    Wechsle ich nun einen Unterdialg, soll SOFORT überprüft werden ob dieser dialog verändert wurde und bei
    JA --> MessageBox, ob Daten gespeichert werden sollen
    Nein --> Daten nicht übernehmen, --> nächsten Dialog öffnen

    So weit zur Theorie....meines Erachtes nach muss ich doch dann die DoDataExchange - Funktion modifizieren.....-Flag überprüfen und dementsprechend weiter-! Gesagt, getan.
    Jedoch wird diese beim Wechseln nicht aufgerufen, da der Dialog ja noch geladen ist. 😕

    Wie löst man das am Geschicktesten? Stehe momentan auf dem Schlauch....!

    Bin für jede Art von Hilfe dankbar....

    Gruss
    S.



  • Versuchs doch mal mit

    UpdateData(TRUE);

    (die ruft nämlich intern DoDataExchange() auf!)

    Gruß Steffen



  • Hallo,
    erstmal Danke für den Tipp.
    Allerdings befinden sich die Buttons zum Wechseln der Dialoge auf dem Hauptdialog.
    Dann wäre ja wieder zu überprüfen, welcher Unterdialog gerade noch aktiv ist und so....!

    Aber die Idee ist echt gut. Mal schauen, wenn es keine direkte Möglichkeit gibt, dann werde ich das mal ausprobieren.

    Danke jedenfalls.

    Gruss
    S.


Anmelden zum Antworten