I have a doubt. I have created a Frame in firemonkey and added 2 buttons, then inside MainForm I added this Frame.
Frame.Align = Scale
In the MainForm the Object Frame.Align = Client
When I compile and resize the Form, the Frame does not scale.
Is this a normal question or a bug?
object Form1: TForm1
Left = 0
Top = 0
Caption = 'Form1'
ClientHeight = 481
ClientWidth = 627
FormFactor.Width = 320
FormFactor.Height = 480
FormFactor.Devices = [Desktop]
DesignerMasterStyle = 0
inline Frame21: TFrame2
Align = Scale
Position.Y = -3.000000000000000000
Size.Width = 887.000000000000000000
Size.Height = 653.000000000000000000
Size.PlatformDefault = False
end
end
object Frame2: TFrame2
Align = Scale
Size.Width = 526.000000000000000000
Size.Height = 395.000000000000000000
Size.PlatformDefault = False
object Button1: TButton
Position.X = 80.000000000000000000
Position.Y = 40.000000000000000000
TabOrder = 0
Text = 'Button1'
end
object Button2: TButton
Position.X = 144.000000000000000000
Position.Y = 144.000000000000000000
TabOrder = 1
Text = 'Button2'
end
object Button3: TButton
Position.X = 240.000000000000000000
Position.Y = 256.000000000000000000
TabOrder = 2
Text = 'Button3'
end
end
No, there is no bug with Align = Scale in a frame. You seem to have only the frame itself aligned with Scale.
If you want the components on the frame also to scale, you need to assign their Align property as well.
Here's my form
object Form22: TForm22
Left = 0
Top = 0
Caption = 'Form22'
ClientHeight = 200
ClientWidth = 350
FormFactor.Width = 320
FormFactor.Height = 480
FormFactor.Devices = [Desktop]
DesignerMasterStyle = 0
inline Frame221: TFrame22
Align = Scale
Position.X = 16.000000000000000000
Position.Y = 14.000000000000000000
Size.Width = 320.000000000000000000
Size.Height = 171.000000000000000000
Size.PlatformDefault = False
TabOrder = 1
inherited Label1: TLabel
Position.X = 16.000000000000000000
Position.Y = 24.000000000000000000
end
inherited Button1: TButton
Position.Y = 48.857139587402340000
Size.Height = 19.193893432617190000
Size.PlatformDefault = False
end
inherited Button2: TButton
Position.Y = 48.857139587402340000
Size.Height = 19.193893432617190000
Size.PlatformDefault = False
end
inherited Rectangle1: TRectangle
Position.Y = 76.775512695312500000
Size.Height = 77.647918701171880000
end
end
end
And the frame
object Frame22: TFrame22
Align = Scale
Size.Width = 320.000000000000000000
Size.Height = 196.000000000000000000
Size.PlatformDefault = False
TabOrder = 0
object Label1: TLabel
Position.X = 32.000000000000000000
Position.Y = 32.000000000000000000
Text = 'Frame here!'
end
object Button1: TButton
Align = Scale
Position.X = 16.000000000000000000
Position.Y = 56.000000000000000000
TabOrder = 1
Text = 'Button1'
end
object Button2: TButton
Align = Scale
Position.X = 216.000000000000000000
Position.Y = 56.000000000000000000
TabOrder = 2
Text = 'Button2'
end
object Rectangle1: TRectangle
Align = Scale
Position.X = 16.000000000000000000
Position.Y = 88.000000000000000000
Size.Width = 281.000000000000000000
Size.Height = 89.000000000000000000
Size.PlatformDefault = False
end
end
Note that all components (except the TLabel) have their Align property set to Scale.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With