Addressing controls who's name is in a variable

How can I address the properties of a control whose name I have in a variable?

I have tried something like this:-

TControl(ControlName).Property := xxxx;

While compiles happily I get an address error on run. I realsie I am apparently typecasting the ControlName variable to TControl and this is probably the cause of the error but I can't see the way to solve the problem.

Thanks

Chris
ChrisBerryAsked:
Who is Participating?
 
rene100Commented:
try the FindComponent Method.
Example for a form with a TLabel named label1 on it:

procedure TForm1.Button1Click(Sender: TObject);
var
a: string;
b: TComponent;
begin
a:='label1';
b:=Findcomponent('label1');
(b as Tlabel).caption:='NewText';
end;

regards
rene
0
 
ChrisBerryAuthor Commented:
Thank you, I had implemented a find component using the component list of the form but I thought there must be a better way.


0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.