Da die Frage recht allgemein gehalten ist, müssen wir uns mal in eine Richtung tasten...
Du kannst natürlich die if´s schachteln:
Delphi-Quellcode:
if CheckBox1.Checked then
begin
if CheckBox11.Checked then
begin
end;
if CheckBox12.Checked then
begin
end;
end;
Dann könntest Du alle Fälle "nummerieren" und case verwenden:
Delphi-Quellcode:
Value := WertberechnungAusCheckboxEinstellungen;
case Value of
1:begin
end;
2:begin
end;
3:begin
end;
end;
Das ist zwar letztlich das Gleiche wie Fall 1, aber trennt die Fallermittlung etwas besser von der Behandlung und erhöht ggf. die Lesbarkeit etwas.
Und man kann auch so etwas benutzen:
Label.Visible := (CheckBox1.Checked and CheckBox2.Checked);
PS: Wenn Du die Änderungen zyklisch in einem Timer prüfst und die Controls anpasst, solltest Du ggf. zunächst auf Änderungen prüfen.
In dem Fall wäre die Case-Variante sinnvoll. Du könntest den Value ermitteln und nur wenn dieser sich zum letzten Wert geändert hat die betreffenden Controls umstellen.
PS2: Setze Code mal bitte in Delphi-Tags, so ist der besser lesbar.