procedure TForm1.Button1Click(Sender: TObject);var I: Integer;begin for I := DBGridEh1.SelectedRows.Count - 1 downto 0 do begin DBGridEh1.DataSource.DataSet.Bookmark := DBGridEh1.SelectedRows[I]; DBGridEh1.SelectedRows.DeleteItem(I); //必须先删除书签,再删除记录,否则全部删除时,会报错。 //如果没有删除书签的代码行,数据集和GRID里记录和行是删除了,但是SelectedRows里会残留一个无效书签,导致后面判断出错。
ADOTable1.DeleteRecords(arCurrent); end; end;