Перемещение окна вне заголовка

{codecitation class=»brush: pascal; gutter: false;» width=»600px»}

— Чем компьютер лучше девушки?

— Мама твоего компьютера не претендует стать твоей тёщей.

Нужно объявить три глобальные переменные в публичных объявлениям (после ключевого слова Public):

public

{ Public declarations }

Draging: Boolean;

X0, Y0: integer;

Draging — для обозначение того периода времени когда пользователь перемещает мышь с зажатой кнопкой мыши,

X0 и Y0 — координаты точки, над которой была зажата кнопка мыши

Далее описываем события формы OnMouseDown, OnMouseMove и OnMouseUp:

procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

begin

Draging := true;

x0 := x;

y0 := y;

end;

procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

begin

Draging := false;

end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

begin

if Draging = true then

begin

Form1.Left := Form1.Left X — X0;

Form1.top := Form1.top Y — Y0;

end;

end;

{/codecitation}

Добавить комментарий