Abfrage, bevor ein Programm/Formular geschlossen wird |
|
| System | Win9x, WinNT, Win2000, WinXP, Vista, Win7 |
|---|---|
| Ab Delphi-Version | Delphi 1 |
| Letzte Änderung | 28.09.2010 |
In bestimmten Fällen muss man sicherstellen, dass eine Form nicht versehentlich oder vorzeitig geschlossen wird. Weit verbreitet ist beispielsweise eine Abfrage, die davor schützt, dass geänderte Daten nicht ungespeichert verloren gehen.Schreiben Sie in das OnCloseQuery-Ereignis des Hauptformulares folgendes, um ein unbeabsichtiges Beenden des Programmes zu verhindern:
procedure TForm1.FormCloseQuery(Sender: TObject;
var CanClose: Boolean);
begin
CanClose := MessageDlg('Wirklich beenden?',
mtConfirmation,
[mbYes,mbNo],
0) = mrYes;
end;
Das Ereignis OnCloseQuery wird ausgeführt, bevor die Form geschlossen wird.Eine Abfrage dieser Art ist in vielen Fällen nicht notwendig. Setzen Sie solche Abfragen nur da ein, wo sie auch wirklich angebracht sind. Zusätzlich sei noch gesagt, dass das Beenden von Windows auf diese Weise behindert wird, da sich das Programm unter Umständen nicht von alleine schließt.
- Benachrichtigungen bei Fensterbewegungen abfangen
- Fenster auch im Client-Bereich verschieben
- Ereignisreihenfolge beim Anzeigen eines Formulars
- Fenstergröße begrenzen
- Transparentes Fenster erzeugen
- Alle sichtbaren Fenster minimieren/wiederherstellen
- Auflisten aller Fenster
- Beliebige Fenster minimieren, maximieren
- Position eines fremden Fensters abfragen
- Ermitteln, welche EXE hinter einem Fensternamen steckt