Bonjour,
j'ai résolu mon problème autrement mais je me pose toujours la question (valable aussi bien pour une Form appelée par Show que par ShowModal).
Dans une séquence d'affichage d'une Form à partir de quel comment et comment peut-on fermer cette Form ?
Mon problème était celui-là :
Une Form1 dispose d'une dbGrid. Un double-clic sur une ligne ouvre (Show ou ShowModal suivant les circonstances) une Form2 qui active son Query pour bloquer l'enregistrement. Si cela se passe mal, je veux que ma Form2 se ferme automatiquement.
L'activation du Query était placée initialement dans le Create de la Form2... L'exception déclenchée par le Query ne ferme pas à ce niveau la Form2.
J'ai réglé le problème à partir de la Form1. Mais quand même...
En supposant que le déclenchement d'une exception dans le Create d'une Form se déclenche, comment ferme-t-on automatiquement cette Form ?
Procédure d'appel en VCL
1 2 3 4 5 6 7 8 9 10 11 12 13
| procedure TfElv.btUPDClick(Sender: TObject);
begin
gelID := DBGrid1.DataSource.DataSet.FieldByName('elID').AsString;
if not Assigned(fElvUID) then begin
with TfElvUID.Create(nil) do
try
ShowModal;
finally
Free;
end;
DBGrid1.DataSource.DataSet.Refresh;
end;
end; |
Merci.
Partager