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

Вниз

Drag&Drop с помощью TWMNChitTest   Найти похожие ветки 

 
DeepProg   (2005-05-28 14:31) [0]

Данная конструкция
procedure tfmNIMMain.WMNCHitTest(var M: TWMNCHitTest);
begin
inherited;
if M.Result = htClient then M.Result := htCaption
end;

не приводит к желаемому результату. Т.е. 0 эмоций со стороны приложения. Breakpoints + WinSight32 показали, что WM_CHITTEST вышеприведенным кодом обрабатывается, только форма не пытается никуда сдвинуться.
Эта оработка вообще работает (а может она "осезависима") или придется обрабатывать события работы с мышью?


 
TUser ©   (2005-05-28 14:47) [1]

??
А в описании класса написано message WM_NcHitHest ?


 
DeepProg   (2005-05-28 14:53) [2]

Нет, там написано WM_NcHitTest :)
Type
TForm1 = class(TFrom)
...
 private
   { Private declarations }
   procedure WMNCHitTest(var M : TWMNCHitTest); message
WM_NCHITTEST;
...


 
DeepProg   (2005-05-28 15:28) [3]

Поймал баг - у меня Panel на всю форму растянута - она и мешает.
Все-таки придется возиться с мышью...


 
TUser ©   (2005-05-28 15:58) [4]

Просто пересылай форме те сообщения, которые придут к панели


 
rOOse ©   (2005-05-28 16:03) [5]


> 4] TUser ©   (28.05.05 15:58)

Вот тут поподробнее плз.


 
Marser ©   (2005-05-28 16:13) [6]


> rOOse ©   (28.05.05 16:03) [5] [Новое
>сообщение][Ответить]
>
>> 4] TUser ©   (28.05.05 15:58)
>
> Вот тут поподробнее плз.

В обработчик панели:
sendmessage(self.handle, msg, wparam, lparam)
или
Panel1.perform(self.handle, msg, wparam, lparam)


 
DeepProg   (2005-05-28 16:39) [7]

Я дольше ныл. С мышью все просто и аккуратно.

>sendmessage(self.handle, msg, wparam, lparam)
У меня не прокатило (WinSight не регистрировал никаких сообщений, но и ошибок не вылезало...).
И в любом случае придется обрабатывать
WM_SETCURSOR, WM_MOUSEMOVE, WM_NCHITTEST, WM_MOVING.
Т.е. на 1 процедуру больше, чем методом OnMouseDown, OnMouseMove, OnMouseUp ;)


 
Marser ©   (2005-05-28 16:47) [8]


>  меня не прокатило

Это зависит от того, куда ты её вставил. нужно было в оконную функцию.



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

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

Наверх




Память: 0.48 MB
Время: 0.027 c
1-1120648034
td
2005-07-06 15:07
2005.07.25
объявить процедуру


14-1120244761
Alx2
2005-07-01 23:06
2005.07.25
Вид на Delphi из космоса


1-1120651308
chili
2005-07-06 16:01
2005.07.25
Помоги разобраться как Outlook Express создает POP3 Password2


4-1117137483
cherrex
2005-05-26 23:58
2005.07.25
OCR для DELPHI


14-1120463236
Layner
2005-07-04 11:47
2005.07.25
Немного об автоматизации работы.