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

Вниз

WM_NCLBUTTONUP   Найти похожие ветки 

 
IllusoryOrion ©   (2005-01-17 13:38) [0]

Добрый день!
Столкнулся с такой проблемой:
Ставлю глобальный хук WH_GETMESSAGE и хочу отлавливать сообщения WM_NCLBUTTONUP, WM_NCLBUTTONDOWN. Но получается отлавливать только WM_NCLBUTTONDOWN, создается такое впечетление, что WM_NCLBUTTONUP окнам вообще не приходят! В МСДН написано, что если окно захватывает capture, то сообщение не отправляется, НО если поставить обработчик на это сообщение в СВОЕЙ форме:
procedure WMNCLButtonUp(var Msg: TMessage); message WM_NCLBUTTONUP; то все замечательно работает!

Так вот, подскажите как хуком отлавливать єто сообщение, или хотя бі обїясните почему своему окну єто сообщение отправляется, а ждугим окнам НЕ СВОЕГО приложения - нет?


 
IllusoryOrion ©   (2005-01-17 14:01) [1]

помогите


 
Colonel   (2005-01-17 14:23) [2]

Почитай здесь на сайте статью по хукам. Может и найдешь ответ. Я нашел ответы.


 
IllusoryOrion ©   (2005-01-17 14:27) [3]


> Colonel   (17.01.05 14:23) [2]


:) да причем здесь хуки? хук нормально работает, я же говорю WM_NCLBUTTONDOWN отлавливается, а UP - нет.


 
VMcL ©   (2005-01-17 14:35) [4]

>>IllusoryOrion ©  (17.01.05 13:38)

Код засекречен?


 
IllusoryOrion ©   (2005-01-17 14:46) [5]


> VMcL ©   (17.01.05 14:35) [4]


:) Нет конечно. Просто сейчас я не дома и исходников с собой нет. Но у меня что-то типа этого:

const
WM_NC_UP = WM_USER + $100;
WM_NC_DOWN = WM_USER +$200;

function GetWndProc(nCode, wParam, lParam: integer): integer; stdcall;
var
Msg: PMsg;
begin
if nCode>=0 then
begin
 Msg:=PMsg(wParam);
 //еще проверки на хиттест, на то имеет ли окно caption, но это не важно
 case Msg.message of
  WM_NCLBUTTONUP: SendMessage(FindWindow(nil, "Test"), WM_NC_UP, Msg.hwnd);
  WM_NCLBUTTONDOWN: SendMessage(FindWindow(nil, "Test"), WM_NC_DOWN, Msg.hwnd);
 end;
end;
Result:=CallNextWindowsHook(...);
end;

Окно с заголовком "Testing" мое приложение, при приеме сообщения WM_NC_UP,DOWN - добавляет в мемо заголовок окна и его хендл.

Так вот при при button все ок, buttonup - не обрабатывется


 
IllusoryOrion ©   (2005-01-17 14:47) [6]

извиняюсь - окно с заголовком "Test"


 
IllusoryOrion ©   (2005-01-17 14:49) [7]

мда :) ну и еще конечно же при SendMessage lParam - 0 и

"Так вот при при button все ок, buttonup - не обрабатывется" должно быть

"Так вот при при buttondown все ок, buttonup - не обрабатывется"


 
IllusoryOrion ©   (2005-01-19 16:22) [8]

Ну так что, мастера? Нет не каких идей почему такое происходит и как это побороть?



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

Форум: "WinAPI";
Текущий архив: 2005.03.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.033 c
1-1108593960
VikUA
2005-02-17 01:46
2005.03.06
Стоит ли покупать лиценз.Delphi 8 prof


1-1109175278
novice_man
2005-02-23 19:14
2005.03.06
Память и


1-1108958278
Dido
2005-02-21 06:57
2005.03.06
Excel


1-1108742674
ПроНыРа
2005-02-18 19:04
2005.03.06
удаление Item-a из ListView


1-1108929846
NotFocus
2005-02-20 23:04
2005.03.06
На форма: кнопки, editы и т.п. компоненты, как





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