Автор Тема: [Мышь, клавиатура] Нужен макрос по нажатию 2-ух кнопок мыши  (Прочитано 2702 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Эта тема содержит сообщение, помеченное как лучший ответ. Кликните здесь для перехода к этому сообщению.

Оффлайн Serafima [?]

  • Новичок
  • *
  • Сообщений: 2
  • Репутация: 0
  • Пол: Женский
    • Награды
  • Версия AutoIt: 3.3.12.0
Версия AutoIt: 3.3.12.0

Описание:
Нужен макрос для нажатия 2-ух кнопок мыши(правая, левая) поочередно. Конкретнее: желательно что бы хот кей была "R".

Примечания:

Собственно это нужно для одной игрушки. Посему надо, что бы при нажатии "R" выполнялось это действие единожды, но при каждом нажатии повторялось N-ое кол-во раз и в окне игры.

Заранее спасибо за потраченное время.
« Последнее редактирование: Август 02, 2014, 22:48:14 от Serafima »

Русское сообщество AutoIt


Оффлайн alex33 [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 1440
  • Репутация: 179
  • Пол: Мужской
    • alekssamos ВКонтакте
    • Награды
  • Версия AutoIt: 3.3.12.0
Код: AutoIt [Выделить]
Func _click()
    MouseClick("right")
    MouseClick("left")
EndFunc   ;==>_click
DllCall('user32.dll', 'uint_ptr', 'LoadKeyboardLayoutW', 'wstr', '00000409', 'uint', '0x00000101')
HotKeySet("r", "_click")

While 1
    Sleep(100)
WEnd
 


Оффлайн Dima1337 [?]

  • Осваивающий
  • **
  • Сообщений: 183
  • Репутация: 21
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Еще так можно...

Код: AutoIt [Выделить]
#Include <WinAPIEx.au3>

#RequireAdmin ;Запуск от имени администратора

$sPocesName = 'notepad.exe' ;Процесс игры

Global $sTitl = _WinGetForProc($sPocesName), $hWnd1 = WinGetHandle($sTitl)

HotKeySet("{R}","Click")

While 1
   Sleep(100)
WEnd

Func _WinGetForProc ($sPrName)
   $alist = ProcessList($sPrName)
   For $i = 1 to $alist[0][0]
      $iProcPid = $alist[$i][1]
   Next
   $aData = _WinAPI_EnumProcessWindows($iProcPid, 1)
   $iWin = $aData [1][0]
   $sTitle = WinGetTitle( $iWin )
   Return $sTitle
EndFunc

Func Click()
   ControlClick($hWnd1,"","",'Right') ;Клик в окно игры, в центр экрана.
   Sleep(1000) ;Задержка между кликами 1 секунда
   ControlClick($hWnd1,"","",'Left')
EndFunc


Правильный вопрос - полдела!

Русское сообщество AutoIt

Re: [Мышь, клавиатура] Нужен макрос по нажатию 2-ух кнопок мыши
« Ответ #2 Отправлен: Август 02, 2014, 23:43:40 »

Оффлайн Serafima [?]

  • Новичок
  • *
  • Сообщений: 2

  • Автор темы
  • Репутация: 0
  • Пол: Женский
    • Награды
  • Версия AutoIt: 3.3.12.0
Что-то не работает. А есть вариант, что бы макрос распространялся на все окна? И можно ли вкл\откл макрос? На insert(on) и home(off)?

Может на клавиатуру попробовать. Вместо левой\правой мыши буквы "T" и "G".

Помечен как лучший ответ пользователем Serafima Отправлен Август 03, 2014, 11:51:08

Оффлайн Dima1337 [?]

  • Осваивающий
  • **
  • Сообщений: 183
  • Репутация: 21
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Что-то не работает.
-Что именно не работает? Игра не реагирует?

Что бы макрос распространялся на все окна? И можно ли вкл\откл макрос? На insert(on) и home(off)?
Код: AutoIt [Выделить]
#RequireAdmin ;Запуск от имени администратора

HotKeySet("{R}","_Click")
HotKeySet("{HOME}","_Pause")
HotKeySet("{INS}","_Start")

$Pause = False ; Включено по умолчанию

While 1
   Sleep(100)
WEnd

Func _Click()
   If $Pause = False Then
   ControlClick("","","",'Right') ;Клик в активное окно, в центр экрана.
   Sleep(1000) ;Задержка между кликами 1 секунда
   ControlClick("","","",'Left')
   EndIf
EndFunc

Func _Pause()
   $Pause = True
EndFunc

Func _Start()
   $Pause = False
EndFunc


Может на клавиатуру попробовать. Вместо левой\правой мыши буквы "T" и "G".
(нажмите для показа/скрытия)
Если не подойдет попробуйте так:
(нажмите для показа/скрытия)

Русское сообщество AutoIt

Re: [Мышь, клавиатура] Нужен макрос по нажатию 2-ух кнопок мыши
« Ответ #4 Отправлен: Август 03, 2014, 03:27:24 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
1 Ответов
8730 Просмотров
Последний ответ Январь 05, 2010, 21:11:49
от snoitaleR
12 Ответов
9763 Просмотров
Последний ответ Октябрь 15, 2010, 14:31:48
от Rouch
7 Ответов
9210 Просмотров
Последний ответ Январь 06, 2011, 15:12:53
от CreatoR
2 Ответов
4876 Просмотров
Последний ответ Февраль 10, 2011, 19:24:55
от Viktor217
0 Ответов
1962 Просмотров
Последний ответ Май 12, 2012, 21:05:40
от madmasles
8 Ответов
4775 Просмотров
Последний ответ Февраль 15, 2014, 17:02:21
от Uzn1k
0 Ответов
1003 Просмотров
Последний ответ Июль 31, 2014, 18:30:02
от madmasles
17 Ответов
7597 Просмотров
Последний ответ Декабрь 08, 2014, 16:22:00
от Perfix23
5 Ответов
1761 Просмотров
Последний ответ Февраль 28, 2015, 19:45:28
от AndreySeVeN
1 Ответов
174 Просмотров
Последний ответ Март 26, 2019, 01:22:36
от CreatoR