Пользователь

Добро пожаловать,

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

Меню сайта




Ваше мнение
Как вы узнали о нашем сайте?

От друга, знакомого
Из печатных источников
Из поисковой машины
По ссылке с другого сайта
Случайно
Не знаю


Результаты
Другие опросы

Всего голосов: 1031
Комментарии: 4


Наши партнеры



Статистика




Programming books  Download software  Documentation  Scripts  Content Managment Systems(CMS)  Templates  Icon Sets  Articles  Contacts  Voting  Site Search




Статьи и обзоры



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

Статьи по объектно-ориентированному программированию на языке Pascal и в среде программирования Delphi. Примеры работающего кода, тексты компонентов и классов, советы мастеров. В приведенном примере показано как отследить (обнаружить) движение колеса мыши.




Принцип работы прост - на события 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.



Нет комментариев. Почему бы Вам не оставить свой?
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.
Внимание! Если у вас не получилось найти нужную информацию, используйте рубрикатор или воспользуйтесь поиском


.



Статьи и обзоры Delphi и TurboPascal Программное определение движения колеса мыши приведенном примере показано как отследить обнаружить движение колеса мыши Принцип работы прост на события 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 FormClose Action TCloseAction private Private declarations описание обработчиков событий обработка движения MouseWheel Shift TShiftState WheelDelta Integer MousePos