Hallo!
Ich habe eine
VCL-Anwendung, welche neben dem Hauptformular noch mehrere Childforms offen haben kann. Jedes Childform behandelt sein eigenes OnCloseQuery selbst. Auch das Mainform behandelt sein OnCloseQuery. Bisher ist es so, dass zuerst die OnCloseQuery-Handler der Childforms aufgerufen werden, wenn der User auf Schließen im Mainform klickt und erst als letztes das OnCloseQuery des Hauptformulars. Ich bräuchte es aber genau umgekehrt oder genauer gesagt ein zusätzliches Event im Mainform, welches vorrangig behandelt wird.
Gibt es eine Windows-Message die ich abfangen könnte bevor die Ereigniskette an die Childforms weiter geht? Wichtig wäre nur, dass ich die weitere Behandlung des Ereignisses bzw. der Message unterbrechen kann.
Sinn der Sache ist folgender: In jedem der Childforms gibt es Möglichkeiten, dass der User Einstellungen ändert etc. die evtl. noch nicht gespeichert sind. Es gibt eine zentrale Verwaltung ungespeicherter Objekte. Wird explizit nur ein Childform geschlossen, dann erscheint über OnCloseQuery eine Nachfrage zum Speichern genau der Objekte, die sich auf dieses Childform beziehen. Wird das Mainform geschlossen, erscheinen demzufolge mehrere Speichern-Abfragen nacheinander, was für den User lästig ist.
Entsprechend möchte ich beim Schließen des Mainforms eine zusammengefasste Liste aller zu speichernden Objekte anzeigen, die der User gebündelt bestätigen kann.
Grüße
Cody