Hai Vader,
ich würde einen anderen Weg gehen. Mache keine Abfrage bevor Du
.Delete aufrufst sondern mache das im
BeforeDelete-Ereigniss deines DataSets. Dadurch machst Du die Prüfung an einer zentralen Stelle und kannst sicher sein das die Abfrage immer kommt.
Delphi-Quellcode:
procedure TForm1.Query1BeforeDelete(DataSet: TDataSet);
begin
if (MessageBox(0, 'Datensatz wirklich löschen!', 'Löschen', MB_ICONQUESTION or
MB_YESNO or MB_DEFBUTTON2) = idNO) then
begin
Abort;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Query1.Delete;
end;
Ich habe anstelle von MessageDlg eine MessageBox genommen weil ich dort den Defaultbutton angeben kann. In diesem Fall ist das bei mir der "Nein-Button" und nicht wie bei einem MessageDlg der "Ja-Button".
Stephan B.
"Lasst den Gänsen ihre Füßchen"