Как вырваться из бесконечной петли при обнаружении нажатия клавиши на заднем плане? - PullRequest
0 голосов
/ 22 сентября 2019

Итак, у меня есть скрипт с именем clicker.py.Все, что делает эта программа, - это клик на одно место навсегда.Моя проблема в том, как я могу убить эту программу?Я не могу переключиться в окно командной строки, чтобы нажать CTRL + C на моей клавиатуре, чтобы скрипт получил KeyboardInterrupt, потому что clicker.py просто щелкнет из окна командной строки.

Как я могусделать так, если я нажму клавишу esc на клавиатуре, она выйдет из цикла?Он должен обнаруживать в основном все нажатия клавиш в фоновом режиме.


enter image description here

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


clicker.py

import pyautogui

print("Welcome")    

while(1):
    pyautogui.click(x=100, y=100, button="left")
    # If esc is pressed break out of loop (You don't need to press esc in the command window. Just press esc)

print("Bye! See you next time")

Я пробовал это (но это не сработало, потому что вы должны нажать esc, пока у вас есть окно командной строки вверх

import pyautogui
import keyboard

print("Welcome")    

while(1):
    pyautogui.click(x=100, y=100, button="left")
    if (keyboard.is_pressed('q'):
        print("exiting loop")
        break

print("Bye! See you next time")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...