Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by DeddyH,
23. Jan 2016
Dafür ist soweit ich weiß SetSubComponent zuständig.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by DeddyH,
23. Jan 2016
In den Setter kommst Du, sobald der Wert der Property gesetzt wird. Ob aus dem Objektinspektor heraus oder per Code ist dabei egal, außer dass beim Objektinspektor der ComponentState auch csDesigning enthält, falls Dir das etwas nützt.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by DeddyH,
23. Jan 2016
procedure TAudioVolume.SetAppVolume(Value: boolean);
begin
if Value = FAppVolume then
exit;
FAppVolume := Value;
if not FAppVolume then
SetComponents;
end;
oder so ähnlich. AfterConstruction wäre auch noch eine Möglichkeit, aber das wird IIRC nicht immer ausgeführt (es sei denn, ich werfe da gerade etwas durcheinander).
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by DeddyH,
23. Jan 2016
Im Kontruktor jedenfalls bringt es Dir nichts. Wäre der sowieso schon vorhandene Setter nicht besser geeignet?
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by DeddyH,
23. Jan 2016
Im Kontruktor haben die privaten Felder noch die Standard-Werte (0-Entsprechung, also 0, '', nil, false, je nach Datentyp). Deshalb wird Deine Abfrage immer true ergeben, da die Eigenschaften ja erst später gesetzt werden, da ist der Konstruktor aber längst abgearbeitet.