我来教教你怎么动态创建组件

大家都知道动态链表吧,那顾名思义,动态创建组件就是在运行程序时开辟内存创建一个按钮之类的组件。那么为什吗要动态创建呢?
如果你要
1w个按钮你还声明一万次啊。。
我们先从一个例子开始,比如你要一数组的按钮

(不要吐槽我的命名方式)
找到form1的OnShow事件

P.S.以后假如窗口上的组件被盖住或找不到了都去那个红框里找,但动态创建的组件在这里没有。
P.P.S.别问我为什么是OnShow,
十二楼那个参考资料又不是没有~
接下来,在这个事件中这样写

create方法是定义在TObject类里的,因此每个组件都有,他的参数是该组件的parent,也就是你想让这个组件的老子是谁这里就写谁。顺便说一下,self相当于
C艹里的
this指针,他指向的是当前的对象,比如在这里是form1的事件,于是self就是form1.
运行后只有一个空框框

这是因为他们的默认属性相同于是就挤到一块去了,你只需要定义一下他们的坐标

为了少写点代码,就出现了这个问题

可能这个空空的方框不太和谐,于是给他们写上标题

现在好了