我写了如下一段测试代码:
procedure TForm1.FormCreate(Sender: TObject);
var
Edit1:string;
begin
  if (form1.FindComponent(Edit1)<>nil) then
      begin
        if (form1.FindComponent(Edit1) is TEdit) then
            (form1.FindComponent(Edit1) as TEdit).Enabled :=false;
      end;
end;
为何EDIT1的ENABLED属性不会变FALSE?

解决方案 »

  1.   


    var edit1 :string改一下改成var t:string 试一下
      

  2.   

    还是不行,何况我想单设置EDIT1的属性,我还有其他的EDIT控件。
      

  3.   

    // Delphi help
    procedure TForm1.Button1Click(Sender: TObject);
    var
      i: Integer;
    const
      NamePrefix = 'MyEdit';
    begin
      for i := 1 to 20 dobegin
        TEdit.Create(Self).Name := NamePrefix + IntToStr(i);
        with TEdit(FindComponent(NamePrefix + IntToStr(i))) do
        begin
          Left := 10;
          Top := i * 20;
          Parent := self;
        end;
      end;
    end;
      

  4.   

    procedure TForm1.FormCreate(Sender: TObject);
    var
    Edit1:string;
    begin
    edit1:='edit1'
      if (form1.FindComponent(Edit1)<>nil) then
          begin
            if (form1.FindComponent(Edit1) is TEdit) then
                (form1.FindComponent(Edit1) as TEdit).Enabled :=false;
          end;
    end;