Старый 06.10.2005, 18:32   #1   
Форумец
 
Аватар для Alkonaft
 
Сообщений: 38
Регистрация: 03.06.2005
Возраст: 46

Alkonaft вне форума Не в сети
Question Мышиное колесо.

Здравствуйте!!!
Возникла такая проблемулина.
Необходимо сочинить прогу которая должна назничить выполнение некоторого действия Скроллеру. Тонкость еще в том, что функции моей проги должны выполняться в момент, когда пользователь работает с другой программой.
Я сочинил такую DLLку.

library Lib;
uses
SysUtils,windows, messages,
Classes;
{$R *.res}
var
// дескриптор ловушки
HMouse: hHook = 0;

//ловушка
function Skroll(code: integer; wParam: integer;
lParam: integer): integer stdcall;
begin
if wParam=WM_MOUSEWHEEL then beep(300,300);
Result := CallNextHookEx(HMouse, code, wParam, lParam);
end;

procedure StartMouse;
//Установка ловушки
begin
if HMouse = 0 then
HMouse := SetWindowsHookEx(WH_MOUSE, @Skroll, hInstance, 0);
if HMouse = 0 then
MessageBox(0, 'Ловушка не установилась!', 'Ошибка', mb_Ok);

end;
exports Skroll;
exports StartMouse;

begin
end.


Засада в том, что данная ловушка замечтательно ловит вращение скроллера, но мне еще необходимо знать в какую сторону он вертится.

Подскажите как отловить направление вращения????
  Ответить с цитированием
Старый 07.10.2005, 17:43   #2   
бибизьян
 
Аватар для aerin
 
Сообщений: 3,031
Регистрация: 17.02.2004

aerin вне форума Не в сети
MSDN:
wParam
The high-order word indicates the distance the wheel is rotated, expressed in multiples or divisions of WHEEL_DELTA, which is 120. A positive value indicates that the wheel was rotated forward, away from the user; a negative value indicates that the wheel was rotated backward, toward the user.
  Ответить с цитированием
Поиск в теме: 


Опции темы

Быстрый переход:

  Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Support by DrIQ & Netwind