【问题标题】:Move form with BorderStyle bsNONE?使用 BorderStyle bsNONE 移动表单?
【发布时间】:2012-08-07 06:31:36
【问题描述】:

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

【问题讨论】:

    标签: macos delphi delphi-xe2 firemonkey


    【解决方案1】:

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

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

    【讨论】:

    • 我想移动表格,例如表格标题方法。你能写一个示例方法吗
    • @user1581036,我认为您没有提供足够的详细信息来编写方法。怎么搬?
    【解决方案2】:

    在 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 上测试并运行。

    【讨论】:

      猜你喜欢
      • 2015-04-11
      • 2011-11-02
      • 1970-01-01
      • 2010-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多