Главная страница
    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.086 c
14-1123133742
Ega23
2005-08-04 09:35
2005.08.28
С днем рождения! 4 августа


14-1123249871
Jeer
2005-08-05 17:51
2005.08.28
Ни кто из нас так ни где хорошо не работал как в своем резюме


3-1121605921
Jet
2005-07-17 17:12
2005.08.28
Access - объединение двух баз


14-1123244964
DVM
2005-08-05 16:29
2005.08.28
http://delphi.vline.ru/ - Это зеркало delphimaster?


6-1116075803
Stype
2005-05-14 17:03
2005.08.28
Программа для пересылки по сети





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский