Delphi 如何使对象居中

Delphi 如何使对象居中,delphi,firemonkey,Delphi,Firemonkey,如何在窗体中居中放置对象 在我通常使用的VCL中 lblID.Left := (MainForm.Width div 2) - (lblID.Width div 2); 但是上面的代码在FMX中不起作用,因为任何对象的宽度都是单个非整数 我试过以下方法,但仍然不能完全居中 lblID.Position.X := (MainForm.Width div 2) - trunc(lblID.Width) div 2; 有什么问题吗?FMX控件的TPosition属性以浮点格式存储,而不是整数格式

如何在窗体中居中放置对象

在我通常使用的VCL中

lblID.Left := (MainForm.Width div 2) - (lblID.Width div 2);
但是上面的代码在FMX中不起作用,因为任何对象的宽度都是单个整数

我试过以下方法,但仍然不能完全居中

lblID.Position.X := (MainForm.Width div 2) - trunc(lblID.Width)  div 2;

有什么问题吗?

FMX控件的
TPosition
属性以浮点格式存储,而不是整数格式。不需要使用整数除法

 lblID.Position.X := 0.5*(MainForm.Width - lblID.Width);
您可能还应该回顾:

  • ,

例如:

lblID.Align := alHorzCenter;

可以给你想要的。调整
Padding
属性将允许控件垂直放置,而
alHorzCenter
将保持控件水平居中。

FMX控件的
TPosition
属性以浮点而非整数格式存储。不需要使用整数除法

 lblID.Position.X := 0.5*(MainForm.Width - lblID.Width);
您可能还应该回顾:

  • ,

例如:

lblID.Align := alHorzCenter;

可以给你想要的。调整
Padding
属性将允许垂直放置控件,而
alHorzCenter
将保持控件水平居中。

还可以检查FireMonkey布局。还可以检查FireMonkey布局。