Hier noch eine "saubere" Variante den Status zu setzen, ohne das Event auszulösen:
Delphi-Quellcode:
procedure SetCheckBox(ACheckBox: TCheckBox; AValue: Boolean);
var
Event: TNotifyEvent;
begin
with ACheckBox do
begin
Event := OnClick;
try
OnClick := nil;
Checked := AValue;
finally
OnClick := Event;
end;
end;
end;
Grundsätzlich mit Action zu arbeiten, ist aber eventuell der bessere Weg.