procedure TForm1.Button1Click(Sender: TObject); var i : integer; aClassType,aName : string; // aClassType 为控件类型;aName为控件名称 begin for i := 0 to ComponentCount-1 do begin aClassType := aClassType + ';'+Components[i].ClassName; aName := aName+';'+Components[i].Name; end; Caption := aClassType + aName; end;
for i := 0 to ControlCount - 1 do begin Memo1.Lines.Add(Self.Controls[i].Name); end ;//of for
回答zlyanyan(zl)procedure TForm1.Button1Click(Sender: TObject); var i : integer; aName : string; // aName为控件名称 begin for i := 0 to ComponentCount-1 do begin if Components[i].GetParentComponent.Name = 'Panel1' then begin aName := aName+';'+Components[i].Name; end;//end if; end;//end for Caption := aName; end;
i: Integer;
s: string;
begin
for i := 0 to form1.componentcount-1 do
begin
s:=form1.components[i].Name; //其他的属性类似
end;
end;
可以用
TEdit(FindComponent('Edit1')).Text := 'aaa' ;//别的属性类似
设计时可见的都为component
运行时可见的为control
components指所有控件
Components中的对象都是TComponent派生类的对象TControl是TComponent的派生类,Component是组件,Control是可视组件即控件
var
i : integer;
aClassType,aName : string;
// aClassType 为控件类型;aName为控件名称
begin
for i := 0 to ComponentCount-1 do begin
aClassType := aClassType + ';'+Components[i].ClassName;
aName := aName+';'+Components[i].Name;
end;
Caption := aClassType + aName;
end;
begin
Memo1.Lines.Add(Self.Controls[i].Name);
end ;//of for
var
i : integer;
aName : string;
// aName为控件名称
begin
for i := 0 to ComponentCount-1 do begin
if Components[i].GetParentComponent.Name = 'Panel1' then begin
aName := aName+';'+Components[i].Name;
end;//end if;
end;//end for
Caption := aName;
end;