Zitat von
blacky35:
wenn ich bei einer CheckBox die Eigenschaft "AllowGrayed" auf true gesetzt habe, kommt beim Klick immer zuerst dieser Zustand. Beim Laden der Form ist CheckBox nicht ausgewählt. Kann man irgendwie die Reihenfolge ändern.
z.B. 1. Klick ausgewählt, 2. Klick grayed, 3. Klick nicht gewählt.
Neue Komponente (abgeleitet von TCheckbox) erstellen.
Die Methode
Toggle überschreiben. Die orginale Methode sieht so aus:
Delphi-Quellcode:
procedure TCustomCheckBox.Toggle;
begin
case State of
cbUnchecked:
if AllowGrayed then State := cbGrayed else State := cbChecked;
cbChecked: State := cbUnchecked;
cbGrayed: State := cbChecked;
end;
end;