Как сделать передвижение в 5 пикселей курсора при нажатии клавиши w в PyAutoGui
Вот код:
import pyautogui
import keyboard
print("""
Управление:
Левый шифт = Клик
w a s d = Управление мышью
""")
wk = 10 ,0
key = 'left shift'
key2 = 'w'
while True:
if keyboard.is_pressed(key):
pyautogui.click()
while True:
if keyboard.is_pressed(key2):
pyautogui.moveTo(10,0,interval=10)
Ответы (2 шт):
Автор решения: user413816
→ Ссылка
Во-первых первый цикл нигде не обрывается.
Во-вторых, если вы хотите перемещать курсор с текущего положения, то воспользуйтесь pyautogui.position(). Распакуйте его в две переменные соответствующие x и y положения курсора на экране и потом делайте перемещение добавляя текущую позицию pyautogui.moveTo(dx + 5, dy) . За dx и dy я взял текущую позицию курсора.
Автор решения: James_Crumble
→ Ссылка
import pyautogui
import keyboard
print("""
Управление:
Левый шифт = Клик
w a s d = Управление мышью
""")
positionPenalty = 25
leftClick = 'left shift'
keyUp, keyLeft, keyDown, keyRight = 'w', 'a', 's', 'd'
while True:
mousePosition = [pyautogui.position()[0], pyautogui.position()[1]]
print(mousePosition)
if keyboard.is_pressed(keyUp):
mousePosition[1] -= positionPenalty
pyautogui.moveTo(mousePosition[0], mousePosition[1])
elif keyboard.is_pressed(keyLeft):
mousePosition[0] -= positionPenalty
pyautogui.moveTo(mousePosition[0], mousePosition[1])
elif keyboard.is_pressed(keyDown):
mousePosition[1] += positionPenalty
pyautogui.moveTo(mousePosition[0], mousePosition[1])
elif keyboard.is_pressed(keyRight):
mousePosition[0] += positionPenalty
pyautogui.moveTo(mousePosition[0], mousePosition[1])
elif keyboard.is_pressed(leftClick):
pyautogui.click(button='left')
Не знаю для чего тебе это, но вот решение написанное за 5 минут)))