![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вопрос для мастеров...
Man-In-Red © (2002-06-25 20:00:00)Как узнать, что колесико мышки крутиться вверх или вниз, независимо от того, на каком компоненте находится фокус? И как обрабатывать эти события?
rhf (2002-06-28 16:06:00) [1]форм много....
попробуй application.onMessage или хук поставь, это вроде будет локальный можно и без длл обойтись......
Man-In-Red (2002-06-28 13:41:00) [2]
> ты имеешь в виду независимо от активного приложения.....
> или это у тебя в проекте форм много?
В проекте форм много...
Заранее благодарен!
rhf (2002-06-28 09:02:00) [3]ты имеешь в виду независимо от активного приложения..... или это у тебя в проекте форм много?
Man-In-Red (2002-06-28 02:08:00) [4]Может быть...Выше я уже писал какая делфя стоит - Delphi5!
А поточнее - Эта процедура работает только если активна форма в которой она прописана… А как сделать чтобы она работала независимо от того какая в данный момент открыта форма?!
Anatoly Podgoretsky (2002-06-27 21:15:00) [5]Cobalt © (26.06.02 21:03)
Ну о тебе речи нет, я думаю ты бы указал используемую версию Дельфи, не так ли?
rhf (2002-06-27 19:51:00) [6]поточнее........
Man-In-Red (2002-06-27 19:21:00) [7]Вопрос открыт :)
Как сделать чтобы она работала на всех формах?
MAN-IN-RED (2002-06-27 18:56:00) [8]Всем большое спасибо… Вопрос закрыт!
Balu (2002-06-27 12:27:00) [9]У меня, почемуто только так забегало:
if msg.wparamHi<121 then Label1.Caption := "Вверх"
else Label1.Caption := "Вниз";
rhf (2002-06-27 00:50:00) [10]2 Man-In-Red
procedure WMMouseWheel( var msg:tMessage);message WM_MOUSEWHEEL;
.....
procedure form1.WMMouseWheel( var msg:tMessage);
begin
if msg.wparamHi>0 then showMessage("Вверх")
else showMessage("Вниз");
end;
наверное так.... вот только мне проверить не начем :)
есть тут Delphi3 вот только ей такие дела еще не известны :D
rhf (2002-06-27 00:39:00) [11]кусок с msdn.microsoft.com
....
wParam
The high-order word indicates the distance the wheel is rotated, expressed in multiples or divisions of WHEEL_DELTA, which is 120. A positivevalue indicates that the wheel was rotated forward, away from the user; a negative valueindicates that the wheel was rotated backward, toward the user.
Юрий Зотов (2002-06-27 00:32:00) [12]В хелпе Delphi есть описание события OnMouseWheel. Там все и сказано, очень подробно. И все то же самое подходит к сообщению WM_MOUSEWHEEL.
Man-In-Red (2002-06-27 00:28:00) [13]Допустим… Теперь главный вопрос :)
Как пользоваться этим самым WM_MOUSEWHEEL?
Хелп мне ничего не говорит…
Может примерчик у кого есть?
Юрий Зотов (2002-06-26 23:42:00) [14]Цитата из MSDN (описание WM_MOUSEWHEEL):
Requirements:
Windows NT/2000 or later: Requires Windows NT 4.0 or later.
Windows 95/98/Me: Requires Windows 98 or later.
То есть, будет работать под всеми Win32, кроме NT 3.51 и Win95. Осталось только найти того, у кого они еще остались.
Cobalt (2002-06-26 21:03:00) [15]>Anatoly Podgoretsky © (26.06.02 16:05)
>будешь удивлен, но и без этого - меню Help третий сверху пункт
У меня Дельфи 4, SDK поставил, но "меню Help третий сверху пункт" - Inprise Home Page ;))
Anatoly Podgoretsky (2002-06-26 20:34:00) [16]Так ты просто проверь, попробуй поймать это сообщение, кстати надо точнее задавать вопрос, теперь у тебя выползли Windows 98, Win Me, я уже даже боюсь что либо говорить, вдруг еще что выползет :-)
rhf (2002-06-26 20:34:00) [17]ну так ты поробовал то, что в хелпе или как?
Man-In-Red (2002-06-26 20:20:00) [18]???
Man-In-Red (2002-06-26 18:46:00) [19]
> Anatoly Podgoretsky © (26.06.02 17:17)
> Man-In-Red © (26.06.02 16:40)
> Ты ничего про 9x не говорил, да когда разрабатывался 95
> таких мышей не было, не говоря уже про Windows 32s
А Windows 98, Win Me! Тогда уже были мышки на колесах…
Так есть какой-нибудь способ решить этот вопрос?
rhf (2002-06-26 17:33:00) [20]я на msdn.microsoft.com глянул .... вроде сказано - Included in Windows 98, Windows NT 4.0
но точно не могу говорить..... нету рядом родимой делфи...
:)