在dbgrid中选中多条记录,如何通过程序把选中的记录读出来?急!! 多谢!!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用dbgrideh吧,比较简单可以实现 顶:顺便问一下楼主:如何在dbgrid中选中多条记录 procedure TForm1.Button1Click(Sender: TObject);var I: Integer; BookList: TBookList; Book: TBookStr;begin // 保存当前记录位置 Book := ADOTable1.Book; try // 清空 ListBox1 ListBox1.Items.Clear; // 获得当前所选记录列表 BookList := DbGrid1.SelectedRows; //循环读取 for I := 0 to BookList.Count - 1 do begin // 移动书签至 ADOTable1.Book := BookList[I]; // 显示要显示的字段 ListBox1.Items.Add (ADOTable1.FieldByName ('字段名').AsString); end; finally // 回至初始位置 ADOTable1.Book := Book; end;end; for I := 0 to dataset.selectedCount - 1 do begin dataset.gotobook(pointer(dbgrid.selectedrows[i])); dosomething; end; 只能用shift进行多选,不支持ctrl多选。要是想ctrl也可以多选,还要自己写代码的。 Delphi与SQL问题求助 用ado可否修改返回的数据? 怎么实现软件窗口标题的修改 如何检测键盘按下的是哪个方向键? 没分了。。一个小问题 fastreport怎么样保存调整好的报表 ado访问excel 求助!!! 如何知道一个表里面有多少条记录??????? 新人求知帖!! fastreport打印时有时会发生第二张单据中的某一页夹在其它单据中间打出来,为什么? ClientDataSet问题,请问如何去掉ClientDataSet中重复行?(类似实现sql:select distinct 功能)??
顺便问一下楼主:如何在dbgrid中选中多条记录
var
I: Integer;
BookList: TBookList;
Book: TBookStr;
begin
// 保存当前记录位置
Book := ADOTable1.Book;
try
// 清空 ListBox1
ListBox1.Items.Clear;
// 获得当前所选记录列表
BookList := DbGrid1.SelectedRows;
//循环读取
for I := 0 to BookList.Count - 1 do
begin
// 移动书签至
ADOTable1.Book := BookList[I];
// 显示要显示的字段
ListBox1.Items.Add (ADOTable1.FieldByName ('字段名').AsString);
end;
finally
// 回至初始位置
ADOTable1.Book := Book;
end;
end;
begin
dataset.gotobook(pointer(dbgrid.selectedrows[i]));
dosomething;
end;