2

BorderStyle如果设置bsNONE为边框样式,如何移动表单?在火猴 MAC OS X

4

2 回答 2

1

如果没有表单标题,您需要滚动自己的方法让用户移动表单。

要在代码中移动表单,您可以设置表单的 Left 和 Top 属性。

于 2012-08-08T01:58:56.483 回答
0

您可以在 HD FireMonkey XE4 桌面应用程序中执行此操作:

var
Form1: TForm1;
isDraging: boolean;
X0, Y0: single;

implementation

{$R *.fmx}

procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Single);
begin
  isDraging := True;
  X0 := X;
  Y0 := Y;
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState;
  X, Y: Single);
begin
  if isDraging then
  begin
    Form1.Left := Trunc(Form1.Left + X - X0);
    Form1.Top := Trunc(Form1.Top + Y - Y0);
  end;
end;

procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Single);
begin
  isDraging := False;
end;

在 Windows 7 和 Mac OS X Lion 上测试并运行。

于 2013-08-30T11:48:16.070 回答