espera! espera!, el problema del que te hablé lo acabo de erradicar, mira me parece que como la TButtonControl tiene un método SetChecked y una property Checked ya, parece que lo que yo estaba jodiendo las cosas, lo que hice ahora fue lo siguiente:
Código Delphi
[-]
type
TXCustomCheckBox = class (TCustomCheckBox)
protected
Canvas: TCanvas;
FColorBKG,
FLineColor,
FLineFocusedColor,
FBoxColorBKG,
FBoxShineColor,
FBoxCheckColor,
FBoxCheckShadow,
FTextShadowColor: TColor;
FChecked,
FFocused,
FAutoSize: Boolean;
FCaption: string;
procedure CreateParams(var Param: TCreateParams); override;
procedure CMSize(var Message: TMessage); message WM_SIZE;
procedure CMEnter(var Message: TMessage); message CM_ENTER;
procedure CMExit(var Message: TMessage); message CM_EXIT;
procedure BMSetState(var Message: TMessage); message BM_SETSTATE;
procedure BMSetChecked(var Message: TMessage); message BM_SETCHECK;
procedure SetCaption(Value: string);
procedure SetAutoSize(Value: Boolean);
procedure WMPaint(var Message: TWMPaint); message WM_PAINT;
public
constructor Create(aOwner: TComponent); override;
published
property Caption: string read FCaption write SetCaption;
property Autosize: Boolean read FAutoSize write SetAutoSize;
property Checked;
end;
...
y además eliminar el método SetChecked de la implementación,
pero ahora, como puedo hacer algo para la opción Grayed, ??? alguna idea??
2000 gracias de antemano colegas!
saludos!
aeff!