function TForm1.SetCtrlFont(ctrl: TComponent): boolean;
var
pi : PPropInfo; AFont: TFont;
begin
result := false;
pi := getPropInfo(pTypeInfo(ctrl.ClassInfo ), 'Font' );
if ( pi <> nil ) then
begin
AFont := TFont.Create;
AFont.Style := [fsBold];
SetOrdProp(ctrl, pi, Longint(AFont));
AFont.Free;
result := true;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var I: integer;
begin
for I:=0 to self.ComponentCount-1 do
begin
SetCtrlFont(self.Components[i]);
end;
end;