Подписаться на RSS рассылку
Главная » Статьи по Delphi » Программа и интерфейс » Перемещение окна мышью за поверхность формы

Перемещение окна мышью за поверхность формы

Автор: Aleksey

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
const SC_DRAGMOVE = $F012;
begin
  ReleaseCapture;
  Form1.Perform(WM_SYSCOMMAND, SC_DRAGMOVE, 0);
end;

Просмотров: 6850

Обсудить на форуме

+1   Спам
(05.01.2010)
2. Unnamed User
Ну если перемещать две формы одновременно, то надо сперва добавить обработчик перемещений для первой формы

...
private
procedure OnFormMove(var Msg: TWMMove); message WM_MOVE;
...

И в реализации этого метода написать

procedure TForm1.OnFormMove(var Msg: TWMMove);
begin
inherited;
Form2.Left:=Form1.Left;
Form2.Top:=Form1.Top + 175; // вторая форма будет болтаться за 1й
end;


0   Спам
(05.01.2010)
1. Сергей (Xaker)
А что если я хочу перемещать 2 объекта сразу этой функцией...? например

Form1.Perform(WM_SYSCOMMAND, SC_DRAGMOVE, 0);
Form2.Perform(WM_SYSCOMMAND, SC_DRAGMOVE, 0);

а она работает только для первого случая....(



Имя *:
Email:


Код *:

Copyright © 2008-2016 Программирование на Delphi для начинающих и не только

Полнота авторских прав на все материалы, опубликованные на сервере DelphiDevelop.ru принадлежит их авторам

Перепечатка материалов разрешается с указанием авторства и гиперссылки на первоисточник информации

Хостинг от uCoz

Автор проекта: Борисов Сергей

e-mail: save-x@yandex.ru

Связь с администрацией сайта