Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.08.28;
Скачать: CL | DM;

Вниз

перемещение контрола за всю клиентскую область   Найти похожие ветки 

 
Antonn ©   (2005-08-07 09:24) [0]

использую код:
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
const SC_DRAGMOVE:Longint=$F012;
begin
if Button <> mbRight then begin
 ReleaseCapture;
 SendMessage(Handle, WM_SYSCOMMAND, SC_DRAGMOVE, 0);
end;
end;
работает, перетаскивает форму как и надо, но проблемма в том, что при срабатывании этого кода, не "отвечает" OnMouseUp.
Как это можно исправить?
Спасибо.


 
Lamer@fools.ua ©   (2005-08-07 10:56) [1]

> перемещение контрола за всю клиентскую область
>работает, перетаскивает форму как и надо

Так что двигаете всё-таки: форму или контрол на ней? Если форму, то Вы выбрали дико извратный способ. Если контрол, то тоже.

>const SC_DRAGMOVE:Longint=$F012;

Где Вы такое нашли?

http://search.microsoft.com/search/results.aspx?qu=SC_DRAGMOVE&View=msdn&st=b&c=4&s=1&swc=4


 
Leonid Troyanovsky ©   (2005-08-07 11:04) [2]


> Lamer@fools.ua ©   (07.08.05 10:56) [1]

> >const SC_DRAGMOVE:Longint=$F012;

> Где Вы такое нашли?


Оно недокументировано, но весьма популярно.

--
Regards, LVT.


 
Antonn ©   (2005-08-07 11:15) [3]

Lamer@fools.ua ©   (07.08.05 10:56) [1]
перемещаю форму, и почему извратный? подскажите не извратный.

при использовании:
procedure TForm1.WMNCHitTest (var M:TWMNCHitTest);
begin
 inherited;
 if M.Result = htClient then M.Result := htCaption;
end;
такая же проблемма


 
Lamer@fools.ua ©   (2005-08-07 11:43) [4]

>>Leonid Troyanovsky ©   (07.08.05 11:04) [2]

Хм... буду иметь в виду. Хотя сомневаюсь, что буду использовать. Не люблю недокументированных способов.

>>Antonn ©   (07.08.05 11:15) [3]

>такая же проблемма

Да, действительно. Пока не придумал, как победить. Если придумаю, напишу...


 
Lamer@fools.ua ©   (2005-08-07 12:29) [5]

Spy++ показывает, что сообщение WM_LBUTTONUP постится в очередь сообщений в случае [3]. Почему оно не доходит, пока не разобрался.


 
Antonn ©   (2005-08-07 13:26) [6]

Lamer@fools.ua ©   (07.08.05 12:29) [5]
может там в исходниках где inherited; пропустили? :)


 
Mx ©   (2005-08-07 13:51) [7]

Попробуй убрать ReleaseCapture



Страницы: 1 вся ветка

Текущий архив: 2005.08.28;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.025 c
1-1123242234
Гость22
2005-08-05 15:43
2005.08.28
У кого-нить есть модуль, чтоб делал дату прописью?


1-1123612655
Aleksandrrr
2005-08-09 22:37
2005.08.28
Блокировка выделенных клавиш !!!


14-1123172076
Gerakl
2005-08-04 20:14
2005.08.28
Delphi2005


1-1123507606
Pasha L
2005-08-08 17:26
2005.08.28
Зашивание wav а в res и его проигрывание


1-1123675405
Steepesson
2005-08-10 16:03
2005.08.28
Компонент TTreeView