Einzelnen Beitrag anzeigen

alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#12

Re: Wie kann ich FormDestroy umgehen?

  Alt 10. Jul 2008, 13:04
Bei OnCloseQuery kannst du festlegen, ob das Fenster überhaupt geschlossen wurde.

Wenn Du einen Unterschied zwischen 'Kreuzklick' und 'Abbrechen' machen willst, dann weise dem ModalResult des Abbrechen-Buttons einen anderen Wert zu und prüfe dies im OnClose;

Delphi-Quellcode:
Procedure TForm1.FormClose (Sender : TObject)
Begin
  Case ModalResult Of
    mrCancel : // Kreuz geklickt
    mrIrgendwass : // Dein Button
    else ... // OK, oder ein anderer Buttoni
  End;
End;
Denkbar wäre auch (schon erwähnt?) das im Click-Ereignis des 'Abbrechen'-Buttons ein Flag gesetzt wird und du das dann im FormClose abfragst. Du kannst auch im Click-Ereignis des Buttons das FormClose-Ereignis des Formulars auf Nil setzen, dann wird FormClose eben nicht aufgerufen...
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat