-
-
Notifications
You must be signed in to change notification settings - Fork 12
/
lite-version.py
72 lines (51 loc) · 2.24 KB
/
lite-version.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
import pyautogui
import tkinter as tk
from tkinter import ttk
from tkinter import messagebox
import webbrowser
import threading
import keyboard
class AutoClickerGUI(tk.Tk):
def __init__(self):
tk.Tk.__init__(self)
self.title("AutoClicker")
self.geometry("+300+300")
self.attributes("-topmost", True)
self.inputX = ttk.Entry(self)
self.inputY = ttk.Entry(self)
self.cmb = ttk.Combobox(self, values=["Left Click", "Right Click", "Middle Click"])
ttk.Label(self, text="Enter X Coordinate:").grid(row=0, column=0)
self.inputX.grid(row=0, column=1)
ttk.Label(self, text="Enter Y Coordinate:").grid(row=1, column=0)
self.inputY.grid(row=1, column=1)
ttk.Label(self, text="Select Mouse Button:").grid(row=2, column=0)
self.cmb.grid(row=2, column=1)
ttk.Button(self, text="Start", command=self.start_clicking).grid(row=3, columnspan=2,
pady=(10, 0), ipadx=50)
def start_clicking(self):
x = int(self.inputX.get())
y = int(self.inputY.get())
button = self.cmb.get()
threading.Thread(target=self.click_coordinates,
args=(x, y),
kwargs={"button": button},
daemon=True).start()
def click_coordinates(self, x, y, button):
try:
running = True
while running:
pyautogui.FAILSAFE = False
if button == "Left Click":
pyautogui.click(x, y)
elif button == "Right Click":
pyautogui.rightClick(x, y)
elif button == "Middle Click":
pyautogui.middleClick(x, y)
if keyboard.is_pressed("q"): # Press 'q' to stop clicking
running = False
except Exception as e:
messagebox.showerror("Error", str(e))
# Create GUI instance and start the application loop
if __name__ == "__main__":
app = AutoClickerGUI()
app.mainloop()