我试图减少代码,但我似乎无法做到。我有35" TfrxEdiTControl" (泰迪?)所以我想减少它。缺点是我不确定语言是什么,但我认为是Pascal Script。
现在我有这个:
if EPRD1.text <> '' then
begin
Tab.SQL.Add(','+EPRD1.text);
TabD.SQL.Add(','+EPRD1.text);
end;
if EPRD2.text <> '' then
begin
Tab.SQL.Add(','+EPRD2.text);
TabD.SQL.Add(','+EPRD2.text);
end;
直到EPRD35,所以我想在For循环中进行。
我尝试以下方法:
for i := 1 to (35) do
begin
erpdConcat := FindComponent('EPRD'+IntToStr(i));
if erpdConcat is TEdit then
begin
if TEdit(erpdConcat).text <> '' then
begin
Tab.SQL.Add(','+TEdit(erpdConcat).text);
TabD.SQL.Add(','+TEdit(erpdConcat).text);
end;
end;
end;
但我收到一条消息说&#34; 标识符未声明&#34;查找组件&#34; &#34;
答案 0 :(得分:0)
看起来像帕斯卡尔。
FindComponent是TComponent的一种方法。
我相信TComponent在&#34;类&#34;德尔福和拉撒路的单位。所以课程当然必须在&#34;使用&#34;子句。
由于FindComponent是一个类的方法,因此它不是一个独立的函数,必须从一个Component调用它。
因此,如果您的&#34; TEdit&#34;在一个名为Panel1的面板上,那么您需要将其称为Panel1.FindComponent(等)。
HTH