比如一个s:string=Button1,然后我要改button1.caption,如何通过对这个s操作进行?我想通过这个s来控制N个button。

解决方案 »

  1.   

    function FindComponent(const AName: string): TComponent;
      

  2.   

    这个是IComponent的成员?那么IComponent是什么?能不能告诉具体的使用方法?谢谢
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      str : string;
    begin
      str := 'Button1';
      if FindComponent(str) is TButton then
      begin
        //工作
        TButton(FindComponent(str)).Caption := 'Ok';
      end;
    end;
      

  4.   

    s:string = Button1 这句是不是有问题呀。你可以判断控件的Name属性是否与S值相同即可。var
      s : String;
      i : Integer;
    begin
      s:= 'Button1';
      for i := 0 to form1.ControlCount -1 do
      if s = form1.Controls[i].Name then
      begin
       .. ..
      end;
    end;