我希望用户创建自己的控件列表,例如TEdit
、TCheckBox
、TLabel
和其他内容。但是,当我必须预定义每个控件但我不知道要定义多少个对象时,我该如何制作另一个?
问问题
1399 次
1 回答
2
这是创建每个知道其类类型的对象时应该执行的操作:
var
Obj:TControl;
begin
Obj := TEdit.Create(AOwner);
with Obj do begin
//Set properties here...
...
Parent := Self; //Assuming that you're writing code in your form class. if not, use object variable pointing to your form instead of `self`
end;
end;
要存储未知数量的对象,您可以使用动态数组或链接列表,甚至可以使用Controls
表单的属性。
这是你想做的事情的开始(基础)。您有很多选择来实现应用程序的这一部分。例如,您可以array of TControl
在您的表单类中有一个,并且使用Length
和SetLength
函数您可以计算出您的用户添加了多少对象到表单中。
于 2013-04-01T18:17:19.057 回答