Puedes hacer una rutina que recorra todas las componentes del formulario que le pases. Por cada componente examinas de qué tipo es (TLabel, TEdit, TComboBox, etc.) y según el caso asignas propiedades:
Código Delphi
[-]
procedure CambiaAdornos(Formulario: TForm);
var
Componente: TComponent;
I: Integer;
begin
for I := 0 to Formulario.ComponentCount - 1 do
if Componente is TLabel then
begin
Asignas propiedades a TLabel(Component)
end
else if Componente is TEdit then
begin
Asignas propiedades a TEdit(Component)
end
else if Componente is TComboBox then
begin
Asignas propiedades a TComboBox(Component)
end
else
etcétera
end;
Cuando el usuario escoja los colores, recorres esta rutina para todos los formularios abiertos:
Código Delphi
[-]
var
I: Integer;
begin
for I := 0 to Screen.FormCount - 1 do
CambiaAdornos(Screen[i]);
end;
Si quieres además que los cambios se reflejen al volver a abrir laaplicación entonces tendras que correr esta rutina cada vez que crees un formulario.
// Saludos