Lorsque la fermeture de la fiche est demandée, la procédure liée à l'événement OnClose est exécutée.
Cette procédure permet d'effectuer des dernières opérations avant fermeture de la fiche.

En modifiant la variable Action, on peut modifier la méthode de fermeture de la fiche:

 

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  if MessageDlg('Voulez vous fermer la fiche ?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
    Action := caFree
  else
    Action := caNone;
end;

 

Voici les différentes valeurs que peut prendre la variable Action:
caFree        ---  La fiche est fermée et la mémoire qu'elle occupait est libérée.
caMinimize  ---  La fiche est réduite.
caHide        ---  La fiche est cachée.
caNone       ---  La fiche n'est pas autorisée à se fermer.