esta la palabra reservada "is" que se usa tal como se traduce...
si El Componente es TLabel entonces......
if Form1.Components[1] is TLabel then
with TLabel(Form1.Component[1]) do
begin
........
end
///o
TLabel(Form1.Component[1]).Text := 'Algo';
Otra de las palabras reservadas utilies es "as"...
Con Componente como TButton hacer...
with Form1.Components[1] as TButton do
begin
...
El problema esta si el componente dicho, no es un TButton, delphi lanzara una excepcion.
ALGO QUE NUNCA SE DEBE HACER
if sender is TComboBox then
with sender as TComboBox do
begin
.....
Para que se quiere pasar al sender como TComboBox sabiendo que si es combobox.
Para eso se usa la manera de ariba de todo.