Pascal 递增文本框的变量名称

Pascal incrementing variable names of textboxes

我正在使用数组来管理我的数据输入和输出。

我的问题是我需要 i/o 来自或进入不断递增 1 的文本框 - 所以我的数组从 1 开始到 31 结束。我的文本框是变量,不能是数组,被命名为像 memo67... - memo97.

我可以使用 tmepcounter 吗?所以我想在 for 循环中使用类似 memo(a+66) 的东西。有了这个我可以用我的数组[a] 1到31填充我的文本框。

问候

正如Andreas所说,通常在这种情况下使用数组。但是如果你像我一样喜欢快速复制和过去的动作,你可以通过一个过程使用 TComponent 特性来填充这样的数组:

Type 
   TForm1 = class
              editsset1 : array of tedit;  
             end;



type     TControlDynArray      = Array of TControl;


procedure loadarray (root:tcomponent;var x : TControlDynArray;basename:string;i1,i2:integer);
var l,i : integer;
begin
 l:=i2-i1+1;
 setlength(x,l);
 for i := i1 to i2 do
   begin
     x[i-i1]:=tcontrol(root.FindComponent(basename+inttostr(i)));
   end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  // loads edit1..31 into  editsset1[0] ... editsset[30]
  loadarray(self,TControlDynArray(editsset1),'Edit',1,31);
end;

免责声明:以上代码是从工作代码拼凑而成,但我没有测试最终结果