现在的位置: 首页 > 综合 > 正文

一次删除多条记录

2012年11月06日 ⁄ 综合 ⁄ 共 703字 ⁄ 字号 评论关闭

procedure TForm1.Button1Click(Sender: TObject);
var
  tempBookMark: TBookMark;
begin
  if DBGrid1.SelectedRows.Count >1 then s:= '真的要删除这些记录吗?';
  if Application.MessageBox (Pchar(s),'删除多条记录',mb_iconinformation+mb_yesNo)=idYes then
  begin
    DBGrid1.DataSource.DataSet.DisableControls ;
    i:=0;
    While i<= DBGrid1.SelectedRows.Count -1 do
    begin
      DBGrid1.DataSource.DataSet.Bookmark:= DBGrid1.SelectedRows.Items[i];  //重要在这里取得bookmark
     
      TempBookmark := DBGrid1.Datasource.Dataset.GetBookmark;

      DBGrid1.DataSource.DataSet.GotoBookmark(TempBookMark);
      DBGrid1.DataSource.DataSet.Delete ;
      DBGrid1.DataSource.DataSet.FreeBookmark (TempBookMark);
      Inc(i);
    end;
    DBGrid1.DataSource.DataSet.EnableControls;
  end;

end;

抱歉!评论已关闭.