2012-02-27 7 views
0

Я хочу переназначить мышь и мышь на клавиатурные клавиши, но только при использовании определенного приложения. Это, как далеко я получил:Remap mouse-event to key key

_WinWaitActivate("League of Legends (TM) Client", "") 
HotKeySet("{K}", "WinTab") 
ProcessWait("") 

Func WinTab() 
    Send("G") 
EndFunc 

#region --- Internal functions Au3Recorder Start --- 
Func _WinWaitActivate($title, $text, $timeout=0) 
    WinWait($title, $text, $timeout) 
    If Not WinActive($title, $text) Then WinActivate($title, $text) 
    WinWaitActive($title, $text, $timeout) 
EndFunc 
#endregion --- Internal functions Au3Recorder End --- 

Это переназначить K к G. Также можно переназначить колесико мыши, но я не смог найти подходящую привязку клавиш. Я также хочу приостановить переназначение, если нажата клавиша Esc или Alt + Табл. например.

ответ

0

Использование:

While True 
    If IsPressed('21') Then 
     MouseWheel("up", 2) 
    EndIf 

    If IsPressed('22') Then 
     MouseWheel("down", 2) 
    EndIf 
    Sleep(100) 
Wend 

Exit 

Func IsPressed($hexKey) 
    Local $aR, $bO 
    $hexKey = '0x' & $hexKey 
    $aR = DllCall("user32", "int", "GetAsyncKeyState", "int", $hexKey) 
    If Not @error And BitAND($aR[0], 0x8000) = 0x8000 Then 
     $bO = 1 
    Else 
     $bO = 0 
    EndIf 
    Return $bO 
EndFunc ;==>_IsPressed 

#cs 
    01 Left mouse button 
    02 Right mouse button 
    04 Middle mouse button (three-button mouse) 
    05 Windows 2000/XP: X1 mouse button 
    06 Windows 2000/XP: X2 mouse button 
    08 BACKSPACE key 
    09 TAB key 
    0C CLEAR key 
    0D ENTER key 
    10 SHIFT key 
    11 CTRL key 
    12 ALT key 
    13 PAUSE key 
    14 CAPS LOCK key 
    1B ESC key 
    20 SPACEBAR 
    21 PAGE UP key 
    22 PAGE DOWN key 
    23 END key 
    24 HOME key 
    25 LEFT ARROW key 
    26 UP ARROW key 
    27 RIGHT ARROW key 
    28 DOWN ARROW key 
    29 SELECT key 
    2A PRINT key 
    2B EXECUTE key 
    2C PRINT SCREEN key 
    2D INS key 
    2E DEL key 
    30 0 key 
    31 1 key 
    32 2 key 
    33 3 key 
    34 4 key 
    35 5 key 
    36 6 key 
    37 7 key 
    38 8 key 
    39 9 key 
    41 A key 
    42 B key 
    43 C key 
    44 D key 
    45 E key 
    46 F key 
    47 G key 
    48 H key 
    49 I key 
    4A J key 
    4B K key 
    4C L key 
    4D M key 
    4E N key 
    4F O key 
    50 P key 
    51 Q key 
    52 R key 
    53 S key 
    54 T key 
    55 U key 
    56 V key 
    57 W key 
    58 X key 
    59 Y key 
    5A Z key 
    5B Left Windows key 
    5C Right Windows key 
    60 Numeric keypad 0 key 
    61 Numeric keypad 1 key 
    62 Numeric keypad 2 key 
    63 Numeric keypad 3 key 
    64 Numeric keypad 4 key 
    65 Numeric keypad 5 key 
    66 Numeric keypad 6 key 
    67 Numeric keypad 7 key 
    68 Numeric keypad 8 key 
    69 Numeric keypad 9 key 
    6A Multiply key 
    6B Add key 
    6C Separator key 
    6D Subtract key 
    6E Decimal key 
    6F Divide key 
    70 F1 key 
    71 F2 key 
    72 F3 key 
    73 F4 key 
    74 F5 key 
    75 F6 key 
    76 F7 key 
    77 F8 key 
    78 F9 key 
    79 F10 key 
    7A F11 key 
    7B F12 key 
    7C-7F F13 key - F16 key 
    80H-87H F17 key - F24 key 
    90 NUM LOCK key 
    91 SCROLL LOCK key 
    A0 Left SHIFT key 
    A1 Right SHIFT key 
    A2 Left CONTROL key 
    A3 Right CONTROL key 
    A4 Left MENU key 
    A5 Right MENU key 
#ce 
3

Вы не можете связать действия мыши с помощью HotKeySet, так как это только для клавиатур.

Вместо этого есть несколько вариантов:

Вторая часть

  • Используйте MrCreatoR была сделано тысячи раз ... Поиск для него :)

  • +0

    Является ли ответ @ADIN правильно? Какова роль 'Func IsPressed ($ hexKey)' в его ответе? – 5ervant

    +1

    @ Сервант. Да, он просто использует мое первое предложение из этого ответа. Он также сам определяет IsPressed, а не использует тот, который включен в стандартный UDF AutoIt 'Misc.au3'. – Matt

    +0

    Но я думаю, что он не отключил оригинальные функции колеса прокрутки мыши. – 5ervant

     Смежные вопросы

    • Нет связанных вопросов^_^