![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Перетаскивание окна(формы) [D6, Win2k]
Bers01 © (2004-01-20 16:30:00)Добрый вечер УВАЖАЕМЫЕ МАСТЕРА!
Может поделится кто опытом, а еще лучше примерчиком:
Нужно чтобы окно(форма) перетаскивалось не только за заголовок, а за любую область(внутри окна), на которой его схватили.
Пробовал через MoveWindow(...) на onMouseMove, но при перемещении изображение сильно дергается. Подскажите кто знает.
С Уважением, Андрей.
LukSerg (2004-01-22 18:39:00) [1]procedure Form1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
const SC_DragMove = $F012; { a magic number }
begin
ReleaseCapture;
perform(WM_SysCommand, SC_DragMove, 0);
end;
LukSerg (2004-01-22 18:39:00) [2]procedure Form1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
const SC_DragMove = $F012; { a magic number }
begin
ReleaseCapture;
perform(WM_SysCommand, SC_DragMove, 0);
end;
TUser (2004-01-22 17:02:00) [3]
> HT_CAPTION(точно не помню)
Msg.Result:=htCaption
Thick (2004-01-22 12:23:00) [4]В MouseDown вставляеш SendMessage(wnd,WM_SYSCOMMAND, $F012, 0);
Prov (2004-01-22 08:11:00) [5]Я делал так:
обработать WM_NCHITTEST ??? +HT_CAPTION(точно не помню)
Diamond Cat (2004-01-20 21:48:00) [6]2 easy ©
А не проще result от wm_ncbuttondown ставить в htcaption
Bers01 (2004-01-20 17:28:00) [7]Спасибо!
easy (2004-01-20 17:08:00) [8]
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture();
SendMessage(form1.Handle, WM_NCLBUTTONDOWN, HTCAPTION, 0);
end;