Is there a simple way to ascertain the names of all the controls on a particular form at run time?
Every TComponent descendant has two properties, ComponentCount and Components, that you can use to get a lot of information from your forms. For example, drop a bunch of components from the component palette onto a form. Then, drop a TListBox and a TButton. Name them CompList and btnGet, respectively. Then paste this code into button’s OnClick event handler:
procedure TForm1.bntGetClick(Sender: TObject);var I : Integer;begin with Form1 do for I := 0 to ComponentCount - 1 do lstComps.Items.Add(Components[I].Name);end;
Pretty nifty, huh? For more info, look in the online help.