对不起,以上是错误的。 请按照以下改: with TTable(MyDataModule.FindComponent(MyFun(1011))) do Ls:=Fields[2].FieldName: End; (此窗体需Uses DBTables)
你为什么不直接传Table呢? 比如 function Myfun(Fmt:integer):TTable;// string ==> TTable; case fmt of 1011: result:=MyDataModule.Tbjscg; 1021: result:=MyDataModule.Tbrck; ......类似 end; ///// with Myfun(1011) do Ls:=Fields[2].FieldName: end;
请按照以下改:
with TTable(MyDataModule.FindComponent(MyFun(1011))) do
Ls:=Fields[2].FieldName:
End;
(此窗体需Uses DBTables)
比如
function Myfun(Fmt:integer):TTable;// string ==> TTable;
case fmt of
1011:
result:=MyDataModule.Tbjscg;
1021:
result:=MyDataModule.Tbrck;
......类似
end;
/////
with Myfun(1011) do
Ls:=Fields[2].FieldName:
end;
两位的方法都好用,kxy的方法更简洁。