|
选中DataGrid的“Options|egoMultiSelect”选项,就可以配合Shift或者Ctrl键进行多选了。
多选后SelectedRows记录了多选的记录,代码如下:
procedure TMainForm.GridMultiSelect(ADataGrid: TDataGrid; AMemo: TMemo);
var
i, j: Integer;
s: string;
begin
s := '';
if ADataGrid.SelectedCount > 0 then
with ADataGrid.DataSource.DataSet do
for i := 0 to ADataGrid.SelectedCount - 1 do
begin
Bookmark := ADataGrid.SelectedRows;
for j := 0 to FieldCount - 1 do
begin
if (j > 0) then s := s + ', ';
s := s + Fields[j].AsString;
end;
AMemo.Lines.Add(s);
s := '';
end;
end;
目前选择记录不能跨页,如需跨页可以采用在数据集中加一个临时字段并表现成CheckBox的方法。 |
|