Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Abfrage vor dem löschen ? (https://www.delphipraxis.net/66645-abfrage-vor-dem-loeschen.html)

Vader 1. Apr 2006 22:01

Datenbank: Paradox • Version: 7 • Zugriff über: TQuery

Abfrage vor dem löschen ?
 
hallo,

ich möchte bevor ich einen datensatz lösche nocheinmalfragen ob man es wirklich löschen will,
hab es so probiert aber ich krieg nur ein "OK" und es wird immer gelöscht ?

Delphi-Quellcode:
procedure TForm1.Button5Click(Sender: TObject);
begin
MessageDlg(Datensatz wirklich löschen!',mtInformation , [mbOK], 0);
query1.delete;
end;
ich würde ein ok und nein brauchen !
mfg vader

Die Muhkuh 1. Apr 2006 22:02

Re: Abfrage vor dem löschen ?
 
Delphi-Quellcode:
if MessageDlg('Datensatz wirklich löschen!',mtInformation , [mbOK, mbNo], 0) = mrOK then
  query1.delete;

Matze 1. Apr 2006 22:03

Re: Abfrage vor dem löschen ?
 
Moin,

du musst natürlich auf einen Rückgabewert überprüfen. Schau mal hier hinein. ;)

merlin17 1. Apr 2006 22:33

Re: Abfrage vor dem löschen ?
 
statt mtInformation würde ich mtConfirmation nehmen :angel:
sieht besser in diesem Falle aus.


:-) thomas

Sharky 2. Apr 2006 07:28

Re: Abfrage vor dem löschen ?
 
Hai Vader,

ich würde einen anderen Weg gehen. Mache keine Abfrage bevor Du .Delete aufrufst sondern mache das im Delphi-Referenz durchsuchenBeforeDelete-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".

Vader 2. Apr 2006 11:15

Re: Abfrage vor dem löschen ?
 
hallo,

habe mich für die variante von sharky entschieden,
herzlichen dank !
mfg vader


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:13 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz