I want to allow a form to be sized by the user with its controls proportionaly resized. ScaleBy( N,M ) works fine for me but there are of course cumulative rounding errors if it is repeated. To counter this I simply wish to precede ScaleBy() with a call to recreate the form in its default appearance and size and then call ScaleBy with various values. I know I can do this by hosting my form within a panel (and disposing / recreating it) but is there a call that will reset the form after use of ScaleBy()?
Edit – I am using Delphi XE2 and would also be interested in anyone’s success with a component or other code (paid or free) to scale a form neatly – my own downloads have not produced a working solution.
Try
EasySize(TFormResizer) component.The
TFormResizercomponent resizes all of the controls on a form (or panel) when the form size changes.I used it successfully years ago – works with D5/7. You might need to make small adjustments for XE2 (I do not have XE2, so I cant test it).
Usage: