| 123456789101112131415161718192021222324252627282930313233343536373839 | unit GrayedCheckBox;interfaceuses  StdCtrls;type  TGrayedCheckBox = class(TCheckBox)  protected    procedure Toggle; override;  end;procedure Register;implementationuses  Classes, Windows, SysUtils;procedure Register;begin  RegisterComponents('Martin', [TGrayedCheckBox]);end;  { TGrayedCheckBox }procedure TGrayedCheckBox.Toggle;begin  case State of    cbUnchecked: State := cbChecked;    cbChecked:      if AllowGrayed then State := cbGrayed else State := cbUnchecked;    cbGrayed: State := cbUnchecked;  end;end;initializationend.
 |