Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.08.28;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.035 c
14-1123483701
SPeller
2005-08-08 10:48
2005.08.28
Что такое Up-Link на хабах?


11-1106119944
Ajax
2005-01-19 10:32
2005.08.28
Default button


1-1123669045
BFG9k
2005-08-10 14:17
2005.08.28
RichEdit с картинками


1-1123106623
pOLyMOrpH
2005-08-04 02:03
2005.08.28
Компоненты в run-time


4-1120747792
_vvv_
2005-07-07 18:49
2005.08.28
Windows авторизация





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский