Mal unabhängig von deinem Problem:
Delphi-Quellcode:
initialization
GetCheckSize; // das ist schlecht
Du solltest Code im Abschnitt initialization wann immer möglich vermeiden.
Gründe:
* der Code bremst den Start deiner Anwendung auch dann, wenn deine Komponente vielleicht gar nicht angezeigt wird.
* sollte im Abschnitt initalization eine
Exception auftreten dann wird diese nicht sauber gemeldet, da die
VCL noch nicht ausreichend initialisiert wurde.
Stattdessen erscheint die Fehlermeldung "Runtime error 217 at 003E36F" und das Programm wird gewaltsam beendet.
Delphi-Quellcode:
constructor TATCheckedComboBox.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
if (FCheckWidth=0) and (FCheckHeight=0) then GetCheckSize; // <=======