Главная страница
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.035 c
3-1121344543
Ирина
2005-07-14 16:35
2005.08.28
Отключение связей


14-1122970793
syte_ser78
2005-08-02 12:19
2005.08.28
Запуск от имени


11-1106216023
Эдик
2005-01-20 13:13
2005.08.28
Refresh и дополнительная форма


1-1123441747
Tab
2005-08-07 23:09
2005.08.28
Прозрачность SpeedButton при включенных стилях XP.


14-1122782501
guestPascal
2005-07-31 08:01
2005.08.28
Украли Базу