Что нового

Бесконечно повторяющиеся функция пока зажата кнопка мыши?

ladorvad

Новичок
Сообщения
2
Репутация
0
Помогите пожалуйста модифицировать код,
функция в нем срабатывает один раз при нажатии средней кнопки мыши, как сделать что бы функция повторялась бесконечное количество раз пока зажата средняя кнопка мыши, а не один раз как сейчас?

Код:
#include <MouseSetOnEvent_UDF.au3>

_MouseSetOnEvent($MOUSE_WHEELDOWN_EVENT, "Fast_Zoom")

While 1
WEnd

Func Fast_Zoom()
AutoItSetOption ("MouseClickDownDelay",50)
AutoItSetOption ("SendKeyDownDelay",50)
MouseClick("right")
Sleep(20)
MouseClick("left")
Send("{2}")
Send("{1}")
EndFunc
 
Автор
L

ladorvad

Новичок
Сообщения
2
Репутация
0
Модифицировал код таким образом что при зажатии правой кнопки переменная $i становится равной 1, при переменной равной 1 запускается цикл, при отжатие правой кнопки мыши переменная становится равной 0 и по идее цикл должен прекратить исполнятся, но почему то этого не происходит после нажатия правой кнопки цикл уже не прекращается, и скрипт не удается даже остановить горячей кнопкой на выход. А если в скрипте использовать

$MOUSE_WHEELUP_EVENT ;Отжатие средней кнопки.

То после запуска скрипта вообще перестает двигаться курсор мыши.
В чем может быть сложность?


Код:
#include <MouseSetOnEvent_UDF.au3>

Global $i


_MouseSetOnEvent($MOUSE_SECONDARYDOWN_EVENT, "DOWN")
_MouseSetOnEvent($MOUSE_SECONDARYUP_EVENT, "UP")

HotKeySet("{PAUSE}", "MyExit")


Func UP()
Global $i = 0
EndFunc

Func DOWN()
Global $i = 1

While $i>=1
Send("{1}")
Sleep(100)
WEnd

EndFunc


Func MyExit()
  Exit
EndFunc


While (1)
Sleep(2)
WEnd
 

Hellbender

Новичок
Сообщения
16
Репутация
0
Тебе нужно научить скрипт пониманию зажата или отжата кнопка мыши. и уже на основании этого делать какие либо действия.
 
Верх