The Main-Form of my program has about 30 GUI-Controls (Buttons, Labels, TComboBox, TSpinEditEx, etc). The user shall be able to change all their 'Font.Height' during runtime.
But when I set the new Height via 'Form1.Font.Height:=new_height' then a couple of GUI-Controls automatically switches to the new Height, but other GUI-Controls not. Because of property 'ParentFont=true' I would expect all GUI-Controls automatically to switch to the new Height. Then I found in the documentation: "If the Font of a control is changed by the application, then 'ParentFont' will be automatically set to False" and this applies, e.g. if I only change the font color, which is the reason, that some GUI-Controls automatically switch to the new Height and others not.
What would work is, to set the new Height manually to each individual GUI-Control like:
Form1.Button_Start.Height:=new_height;
Form1.Label1.Height:=new_height;
Form1.SpinEdit1.Height:=new_height;
...
but this would be a little uncomfortable...
So my question is: can I do this in a loop for all members of Form1.Components[]? If yes, for which "type" of members must I do this? Thanks in advance.