Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.021 c
1-1120679021
Vampirchik
2005-07-06 23:43
2005.07.25
ошибка при инициализации приложения (0xc0000135)


1-1120466806
NightStranger
2005-07-04 12:46
2005.07.25
Как загрузить файл из интернета


4-1117276299
DeepProg
2005-05-28 14:31
2005.07.25
Drag&Drop с помощью TWMNChitTest


14-1120202019
Hawk2
2005-07-01 11:13
2005.07.25
Помогите определить поломку!


14-1120332268
NewWonder
2005-07-02 23:24
2005.07.25
Как написать аналог этого кода на MS Visual C++




   Наверх