Mam taki kod:
if JakiesWarunki then
begin
if MessageDlg('Wszystkie pola muszą by wypełnione!',
mtWarning,
[mbOK],
0) = mrOK
then
begin
edtName.SetFocus;
exit;
end;
end;
J := MessageDlg('Czy chcesz zapisać zmiany?',
mtConfirmation,
[mbYes,mbNo],
0);
case J of
mrYes :
begin
JakisKod;
Close;
end;
mrNo :
Close;
end;
Zmienna J jest typu Word. Ogólnie jest to fragment procedury OnClick pewnego przycisku. Są dwa okienka MessageDlg, które pojawiają się niezależnie od siebie.
Problem:
Gdy wcisnę OK na pierwszym MessageDlg, wszystko działa jak należy. Procedura jest przerywana, bo nie powinna dalej być kontynuowana. Ale gdy zamiast przyciskiem OK zamknę okno komunikatu przez Alt+F4 to wyskakuje mi drugi komunikat i procedura jest kontynuowana. Czy można to jakoś obejść??? Coś na wzór zdarzenia OnCloseQuery dla formy???