Water-E:
仿照作者思路刚才自己写了一个代理类的实现,用起来确实挺方便
[阅读: 722] 2005-01-28 02:06:25
type
TDBproxy = Class (TPersistent)
private
fDataSet:TDataSet;
public
constructor Create(ADateSet: TDataSet);
function ForEach : boolean;
end;
implementation
{ TDBproxy }
constructor TDBproxy.Create(ADateSet: TDataSet);
begin
Assert( assigned(ADateSet));
fDataSet:= ADateSet;
end;
function TDBproxy.ForEach: boolean;
var
I: Integer;
begin
result := false;
if fDataSet.eof then
exit;
fDataSet.Next;
for I := 0 to fdataset.FieldCount -1 do
SetPropValue(self,fDataSet.Fields[i].FieldName,fDataSet.Fields[i].AsVariant);
result := true;
end;
嘿嘿