在按下dbnavigator删除按钮后,如何根据决定中止删除记录?

时间:2013-01-13 07:51:01

标签: delphi delphi-xe2 ttnavigator anydac

我可以在按下dbnavigator删除按钮后根据决定中止删除记录吗? 我查看了beforeAction活动

if Button = nbDelete then  
  //check if not OK then

Button := nbCancel;

但它不起作用。任何帮助?

我正在使用DelPhi XE2, anyDac Components

3 个答案:

答案 0 :(得分:3)

使用 BeforeAction 事件

procedure TForm1.DBNavigator1BeforeAction(Sender: TObject; Button: TNavigateBtn);
begin
  if Button = nbDelete then
  begin
    if MessageDlg('Confirm delete now?', mtConfirmation, [mbYes,mbNo], 0) = mrNo then
    begin
      Abort;
    end;
  end;
end;

答案 1 :(得分:1)

您可以使用BeforeDelete事件:

procedure Tdm.MyDataSetBeforeDelete(DataSet: TDataSet);
begin
  if SomeCondition then
  begin
    ShowMessage('Sorry, you can not delete this record.');
    Abort;
  end;
end;

答案 2 :(得分:0)

选择DBNavigator,然后在Options中的Object Inspector上将noConfirmDelete设置为" false"