各有不同,delphi中实现如下:var abc:array[1..100] of Tcheckbox;
    i:integer;
begin
   for i:=1 to 100 do
   begin
      abc[i] := tcheckbox.Create(self);
      abc[i].Left :=10+i*10;
      abc[i].Parent :=self;
      abc[i].Visible :=true;
      abc[i].Name :='abc'+inttostr(i);
      abc[i].OnClick := checlick;
   end;

解决方案 »

  1.   

    thanks a lot!
    正在学习用D6写管理软件,好象比vb6麻烦一点,vb6直接生成就可。
    不过还是多谢cbdiy老兄!!!
      

  2.   

    Delphi中没有控件数组,你直接copy控件再paste,它生成的控件名是原控件名+1
    可以用FindComponent()简单的实现控件数组的功能,假如你有Edit1...Edit100要全部清空:
    var i:integer;
    begin
     for i:=1 to 100 do
      if (FindComponent('Edit'+IntToStr(i)) is TEdit) then
        (FindComponent('Edit'+IntToStr(i)) as TEdit).text:='';
    end;
      

  3.   

    多谢oracle_lover(数据库情人) 老兄!!!
      

  4.   

    Delphi中居然可以这样写,真是长见识。
    本人Delphi初学者,不要笑我^_^
      

  5.   

    eastliangliang(青苹果) 老兄还有什么好方法啊,请教?
      

  6.   

    沮丧,上面两位老兄的方法还是不适用!!!
    比如我复制了100个按钮,他们的名字分别为NBotton1,NBotton2,NBotton3,NBotton4,NBotton5.....NBotton100
    ,这时我想分别在各自的按钮上点击,使被点击的按钮变红色,就没法用数组控件实现,而在vb6中由于copy同一按钮自动生成控件,由于有index参数传递知道点击的是哪个按钮,所以实现这个方法只要一个过程一条语句即可。
    而现在在Delphi6中没办法用一个过程实现。
    我只有建立100个按钮的onclick事件才能使之实现这个非常简单的要求,
    累S人了,各位好心的大虾救命!!
    难道Delphi6真的不如VB6中用???晕倒!!!Help!!!
      

  7.   

    给第一个btn创建onclicked事件
    其它的都指向第一个btn,不要重新创建
      

  8.   

    To wdhs(苍穹_一骑):
    可是我看见的Tag怎么都是0?
    而且使100个按钮怎么统一到Form1_NBotton11onclick()事件
      

  9.   

    先写好Form1_NBotton11onclick()事件,再复制,粘贴你的按钮,所有粘贴的按钮的OnClick都会自动指向Form1_NBotton11onclick()事件
      

  10.   

    To wdhs(苍穹_一骑):
    如果tag传递参数,就可以了吗?
    Form1_NBotton11onclick(...)
    var 
     i:integer;
    begin
      if NBotton(?????).tag=...; then
      ....
    end可是过程中的NBotton怎么辨别啊,到底我点击的哪个按钮?
      

  11.   

    to oracle_lover(数据库情人) :然后我怎么控制各自的按钮事件?
      

  12.   

    procedure TForm1.Form1_NBotton11onclick(sender:object);
     //看见sender了吗?表示触发该事件的是谁
    begin
     if (sender is TButton) then
      ShowMessage((sender as TButton).Name+' was Clicked');
    end; //所有Button的通用函数,但不同的Button按下去结果不一样利用sender你可以做很多事情了,你可以使用(sender as TButton).Caption/Name/Width/Height.... ;只要是该类控件有的属性都可以用;再配合tag属性的使用(比如同一组的Button的tag都设为1,分组的方法变化万千了),我想没有什么VB可以的,Delphi不可以
      

  13.   

    谢谢各位,特别感谢oracle_lover(数据库情人)老兄!!!
    问题已经解决
    我用的包括tag,sender,还有FindComponent解决了问题,不过比VB多了一两句语言而已了.
    对,VB可以的,Delphi也可以。好象.net里面也没了index了,都是Delphi人的编写的.net???