![]() |
![]() ![]() v.5.2011.12.30 |
Будь хитрее всех, используй хитрые инструменты! |
|
Visual Basic 5.0/6.0 - Клавиатуры, мыши, джойстикиВсе примеры / Клавиатуры, мыши, джойстикиОтслеживание движений скрола мышки
Автор: Неизвестно | добавлено: 06.03.2010, 11:00 | просмотров: 3263 (1+) | комментариев: 0 | рейтинг:
Пример отслеживания движений скрола (колесика) мышки. В примере показано, как определить направление движения скрола (вперед, назад).
![]() ИнструкцииВ переменную Wheel передаётся направление вращение: -1 при движении вниз или 1 при движении вверх.Код'------------------- '---VBNet[dot]Ru '------------------- 'КОД ФОРМЫ Option Explicit Private Sub Form_Load() Call Hook(Me.hwnd) End Sub Private Sub Form_Unload(Cancel As Integer) Call UnHook(Me.hwnd) End Sub 'КОД МОДУЛЯ Option Explicit Private Declare Function CallWindowProcA Lib "user32" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal MSG As Long, ByVal wParam As Long, ByVal lParam As Long) As Long Private Declare Function SetWindowLongA Lib "user32" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long Private Declare Function SetWindowTextA Lib "user32" (ByVal hwnd As Long, ByVal lpString As String) As Long Private Const GWL_WNDPROC = -4 Private Const WM_MOUSEWHEEL = &H20A Private lpPrevWndProc As Long, Wheel As Integer Sub Hook(hwnd As Long) lpPrevWndProc = SetWindowLongA(hwnd, GWL_WNDPROC, AddressOf WindowProc) End Sub Sub UnHook(hwnd As Long) Call SetWindowLongA(hwnd, GWL_WNDPROC, lpPrevWndProc) End Sub Function WindowProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long On Error GoTo xErr If uMsg = WM_MOUSEWHEEL Then If wParam = -7864320 Or wParam = -23592960 Or wParam = -15728640 Then Wheel = -1 If wParam = 7864320 Or wParam = 23592960 Or wParam = 15728640 Then Wheel = 1 Call SetWindowTextA(Form1.hwnd, "Wheel " & Wheel) Else WindowProc = CallWindowProcA(lpPrevWndProc, hwnd, uMsg, wParam, lParam) End If xErr: End Function
Язык Visual Basic 6.0 является устаревшим. Многие примеры, размещенные на нашем сайте, были созданы еще во времена Windows 98 и могут не работать в современных операционных системах. Если у вас возникнут какие-либо проблемы или вопросы, вы можете обратиться за помощью на наш форум.
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Все примеры этого автора (всего: 45)
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Все похожие примеры (всего: 31)
Добавлять комментарии могут только зарегистрированные пользователи сайта. Если у Вас уже есть учетная запись на Kbyte.Ru, пройдите процедуру авторизации ![]() Если Вы еще не зарегистрированы на Kbyte.Ru - зарегистрируйтесь. Нет комментариев... |
Зарегистрируйся и получи 10% скидку на добавление своего сайта в каталоги! Подробнее »
|
|