Перемещение формы не за заголовок. Вариант 3
|
В следующем примере показано как можно передвигать форму если пользователь "захватил" Client-пространство: unit Main;
interface
uses SysUtils, WinTypescs, Messages, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); private { Private declarations } public { Public declarations } end; var Form1: TForm1; MX: integer; MY: integer; implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject); begin Close; end;
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if Shift<>[ssLeft] then begin MX:=X; MY:=Y; end else begin Left:=Left+X-MX; Top:=Top+Y-MY; end; end;
end. |