我动态创建N个CHECKBOX控件
var
ss:array[1..4] fo string;
i:integer'
begin
 for i:=1 to 4 do
 begin
  mycheckbox := TCheckBox.Create(nil);
 with mycheckbox do
   begin
     Parent := Form1;//
     Left := 100;//位置信息
     Top := 64+i*22;
     Width := 90;//大小信息
     Height := 17;
    mycheckbox.Caption:=ss[i];
end;
end;
创建后CHECKBOX的CAPTION分别为'一,二,三四'请教我想在CHECKBOX上的CLICK事件上同时取得CHECKBOX的标签值,如何实现?即我在点任意一个CHECKBOX的时候就能取得相应的CAPTION

解决方案 »

  1.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      ss: array[1..4] of string;
      i: integer;
      mycheckbox: TCheckBox;
    begin
      for i := 1 to 4 do
      begin
        mycheckbox := TCheckBox.Create(nil);
        with mycheckbox do
        begin
          Parent := Form1; //
          Left := 100; //位置信息
          Top := 64 + i * 22;
          Width := 90; //大小信息
          Height := 17;
          mycheckbox.Caption := ss[i];
          OnClick := DoClickCheckBox;
        end;
      end;
    end;procedure TForm1.DoClickCheckBox(Sender: TObject);
    var
      mycheckbox: TCheckBox;
    begin
      mycheckbox := TCheckBox(Sender);
      ShowMessage(mycheckbox.Caption);
    end;
      

  2.   

    OnClick事件中的Sender: TObject参数传递的就是你点击的TCheckBox