Python Forum
Please help me with keyboard clicker
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Please help me with keyboard clicker
#1
Hello, my idea is that after i press "f" program start pressing arrows up, right, down and left in 0,2 sec, til I press "f" again.

My code is:

import time
import threading
from pynput.keyboard import Key, Controller
from pynput.keyboard import Listener, KeyCode
keyboard = Controller()

delay = 0.200
Key = [keyboard.press(Key.left),
    keyboard.release(Key.left)]
start_stop_key = KeyCode(char='f')
exit_key = KeyCode(char='e')

class ClickKB(threading.Thread):
    def __init__(self, delay, Key):
        super(ClickKB, self).__init__()
        self.delay = delay
        self.Key = Key
        self.running = False
        self.program_running = True

    def start_clicking(self):
        self.running = True

    def stop_clicking(self):
        self.running = False

    def exit(self):
        self.stop_clicking()
        self.program_running = False

    def run(self):
        while self.program_running:
            while self.running:
                #mouse.click(self.Key)
                time.sleep(self.delay)
            time.sleep(0.1)


keyboard = Controller()  # Create the controller
click_thread = ClickKB(delay, Key)
click_thread.start()


def on_press(key):
    if key == start_stop_key:
        if click_thread.running:
            click_thread.stop_clicking()
        else:
            click_thread.start_clicking()
    elif key == exit_key:
        click_thread.exit()
        listener.stop()


with Listener(on_press=on_press) as listener:
    listener.join()
But it is not working, can u please look on it and may be repair my code? Thank you very much.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Clicker count increase by 1 each time blakefindlay 1 5,533 Feb-03-2021, 03:50 PM
Last Post: deanhystad

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020