您的位置:首页 > 编程语言 > Delphi

Delphi XE2 之 FireMonkey 入门(3) - 关于 TPosition

2011-09-21 13:26 369 查看
把 FireMonkey 简称为 FM 吧. FM 的窗体继续使用 Left、Top 属性, 但更多控件不是了.

//FM 控件的位置控制不再是 Left、Top, 取而代之的是 Position 属性
procedure TForm1.Button1Click(Sender: TObject);
begin
Rectangle1.Position.X := Rectangle1.Position.X + 10;
Rectangle1.Position.Y := Rectangle1.Position.Y + 10;
end;

//TPosition 是类
procedure TForm1.Button2Click(Sender: TObject);
var
posObj: TPosition;
begin
posObj := TPosition.Create(TPointF.Create(10, 10));
Rectangle1.Position.Assign(posObj);
posObj.Free;
end;

//TPosition.Point 是 TPointF 类型的结构
procedure TForm1.Button3Click(Sender: TObject);
begin
Rectangle1.Position.Point := TPointF.Create(50, 50);
end;

//TPointF 结构也拥有许多方便的方法和运算符重载
procedure TForm1.Button4Click(Sender: TObject);
var
ptf: TPointF;
begin
ptf.X := ClientWidth / 2;
ptf.Y := ClientHeight / 2;
ptf.Offset(-Rectangle1.Width / 2, -Rectangle1.Height / 2);
Rectangle1.Position.Point := ptf;
end;

//TVector 是包含三个元素的结构体, TPosition 可以直接使用其前两个数据
procedure TForm1.Button5Click(Sender: TObject);
var
vector: TVector;
begin
vector.X := ClientWidth - Rectangle1.Width;
vector.Y := ClientHeight - Rectangle1.Height;
//  vector.W := 0.0;
Rectangle1.Position.Vector := vector;
end;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: