Программное определение движения колеса мыши
Категория: Delphi | Автор: admins | (18 февраля 2017)
 

Программное определение движения колеса мыши


В приведенном примере показано как отследить (обнаружить) движение колеса мыши.

Принцип работы прост - на события OnMouseWheel, OnMouseWheelDown, OnMouseWheelUp вешаются соответствующие процедуры-обработчики.
unit Unit2;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type

TForm1 = class(TForm)

Label1: TLabel;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);

private

{ Private declarations }

// описание обработчиков событий

// обработка движения колеса мыши
procedure MouseWheel(Sender: TObject; Shift: TShiftState;
WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);

// обработка прокрутки колеса вниз
procedure MouseWheelDown(Sender: TObject; Shift: TShiftState;
MousePos: TPoint; var Handled: Boolean);

// обработка прокрутки колеса вверх
procedure MouseWheelUp(Sender: TObject; Shift: TShiftState;
MousePos: TPoint; var Handled: Boolean);

public

{ Public declarations }
end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin

// Назначаем обработчики для событий:
// движение колеса мыши
Form1.OnMouseWheel:=MouseWheel;

// прокрутка колеса вниз
Form1.OnMouseWheelDown:=MouseWheelDown;

// прокрутка колеса вверх
Form1.OnMouseWheelUp:=MouseWheelUp;

end;

procedure TForm1.MouseWheelDown(Sender: TObject; Shift: TShiftState;
MousePos: TPoint; var Handled: Boolean);
begin

// Детекция движения колеса вниз
ShowMessage('Колесо повернуто вниз');
end;

procedure TForm1.MouseWheelUp(Sender: TObject; Shift: TShiftState;
MousePos: TPoint; var Handled: Boolean);
begin

// Детекция движения колеса вверх
ShowMessage('Колесо повернуто вверх');
end;

procedure TForm1.MouseWheel(Sender: TObject; Shift: TShiftState;
WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
begin

// Процедура реакции на движение колеса мыши
ShowMessage('Обнаружено движение колеса мыши...');
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin

// отменяем обработку событий от колеса мыши
Form1.OnMouseWheel:=nil;
Form1.OnMouseWheelDown:=nil;
Form1.OnMouseWheelUp:=nil;

end;

end.

Источник:





 (Голосов: 0)

 


     

Была ли полезной Вам статья?
Да Нет

Только зарегистрированные пользователи могут оставлять в данной новости свои комментарии.

У нас искали: