一个表table_1对应一个adoquery,dbgrid,如何设置dbgrid,使它能够同时有多行被选中,并且取把被选中的这几行插入到另一个表table_2中,同时删除从原来的表中删除这几行?应该是一个不简单的问题吧,希望能有高手帮我解决!

解决方案 »

  1.   

    设置DBgrid的属性Options下的dgMultiSelect为True
    然后再配合下面的代码即可实现想要的功能
    procedure TForm1.btnOKClick(Sender: TObject);
    var
      i: Integer;
    begin  for I := 0 to DBGrid1.SelectedRows.Count - 1 do
      begin
        adsData.Book := DBGrid1.SelectedRows.Items[i];
        Caption := Caption + ' -> ' + adsData.FieldByName('name').AsString;  end;
    end;关键能够获取到哪些是被选中的, 其他的问题就迎冷而解!