Modificar una propiedad por su nombre
Artículo por Club Developers · 31 diciembre 2005
2523 vistas
Este método se basa en el uso de la RTTI (Run Time Type Information) para acceder a las propiedades de los componentes. En el ejemplo mostramos cómo cambiar la propiedad Color de todos los componentes que poseen dicha propiedad.
Es la solución más eficaz en el casi de tener que cambiar una propiedad sin necesidad de saber la clase del componente tratado (en este caso la propiedad Color como hemos dicho).
Nota: hay que añadir la unidad TypInfo en la clausula Uses.
Es la solución más eficaz en el casi de tener que cambiar una propiedad sin necesidad de saber la clase del componente tratado (en este caso la propiedad Color como hemos dicho).
delphi
procedure TForm1.Button1Click(Sender: TObject); var i: Integer; begin for i:=0 to ComponentCount - 1 do if IsPublishedProp(Components[i], 'Color') and PropIsType(Components[i], 'Color', tkInteger) then SetOrdProp(Components[i], 'Color', clRed); end;
Nota: hay que añadir la unidad TypInfo en la clausula Uses.