Ver Mensaje Individual
  #32  
Antiguo 18-12-2006
Avatar de hector.roma
hector.roma hector.roma is offline
Miembro
 
Registrado: jul 2005
Ubicación: a caballo entre Galicia y Portugal
Posts: 58
Reputación: 19
hector.roma Va por buen camino
Me alegra que te haya gustado

Siguiendo la forma de este componente lo lógico sería pensar en esta aproximación:
Código Delphi [-]
...
published
  ...
  property ActiveFont:TFont read FFont write FFont;
  ...
pero cuando fueras al Inspector de objetos y le dieras al botón [...] para asignar los valores correspondiente a tu fuente te llevarás una pequeña sorpresa; por así decirlo Delphi no sabe que hacer para asignar de forma correcta los diferentes campos del TFont, para que funcione correctamente creo que vas a tener que jugar con la unit DesignEditors para definir un Property Editor para la asignación del TFont desde el inspector de objetos.

En cualquier caso y siendo un poco chapuzas, puedes poner algo del tipo:

Código Delphi [-]
private
...
FFontName : string;
  FOldFontName:string;
...
published
...
  property ActiveFontName:string read FFontName write FFontName;
...
{En el código DoEnter}
...
  FOldFontName := Font.Name;
  Font.Name := FFontName;
...
{En el código DoExit}
...
  Font.Name := FOldFontName;
...

Así lograrías poder cambiar el tipo de letra en tiempo de diseño para cada uno de los componentes de forma individual desde el propio inspector de objetos, y de este modo cada componente podría tener su tipo de letra diferente si eso tiene alguna utilidad...

Este cutre-procedimiento lo puedes extender también para el resto de propiedades del TFont que quieras modificar... si así lo haces te recomiendo empezar todas esas propiedades por alguna palabra común por ejemplo: FuenteActivaNombre, FuenteActivaTamaño, FuenteActivaEstilo, ... así lo que lograrías es que todas las propiedades aparezcan en el inspector de objetos agrupadas.
Responder Con Cita