procedure GetSelectedRecord
(DataSet : TDataSet; //数据表
FieldName : String; //字段名称
BookmarkList : TBookmarkList; // 书签、用来保存所选字段内容的
Strings : TStrings); //字符串(用于将内容传递到另一个单独窗体中的TLIST控件中)
var
I: Integer;
bm : TBookMark;
begin
Strings.Clear;
with Dataset do
begin
DisableControls;
bm := GetBookMark;
try
//每个选择的记录都有一个书签标志, 这就为处理它们提供了条件
for I := 0 to BookmarkList.Count
- 1 do
begin
Bookmark := BookmarkList[I];
Strings.Add(DataSet.FindField(fieldname).AsString);
end;
finally
GotoBookMark(bm);
FreeBookMark(bm);
EnableControls;
end;
end;
end;
调用举例:
GetSelectedRecord(Table1, NAME, DBGrid1.SelectedRows,
Form2.ListBox1.Items);