1、连点器应用
链接:https://pan.baidu.com/s/1oS_EazJ3bBUmjZreC0Lszw?pwd=od32
提取码:od32
2、应用功能——连点操作
注意:
想直接退出程序,按“q”即可
因为有些游戏会有检测这种连点功能的设置,比如绝区零就用不了
3、代码讲解(记得要先下载相关库)
import tkinter as tk # GUI工具包,创建窗口
from tkinter import messagebox # 用于显示消息框
import threading # 线程模块,用于后台运行
import pyautogui # 第三方库,模拟鼠标键盘操作
class AutoClickerApp:
def __init__(self, root): # 初始化函数
self.root = root
self.root.title("连点器") # 设置窗口标题
self.root.geometry("300x200") # 设置窗口初始大小
self.click_interval = tk.DoubleVar() # 创建DoubleVar类型变量
self.click_interval.set(1) # 默认点击间隔为1秒
# 创建开始和停止按钮组件(窗口对象、文本、调用函数)
#pack设置指定方向的距离设置(pady就是垂直方向的间距设置)
self.start_button = tk.Button(self.root, text="开始连点", command=self.start_clicking)
self.start_button.pack(pady=10)
self.stop_button = tk.Button(self.root, text="停止连点", command=self.stop_clicking)
self.stop_button.pack(pady=10)
self.stop_button.config(state=tk.DISABLED) # 初始状态停止按钮禁用
# 点击间隔设置(包括标签和输入框)
self.interval_label = tk.Label(self.root, text="点击间隔(秒):")
self.interval_label.pack()
self.interval_entry = tk.Entry(self.root, textvariable=self.click_interval)
self.interval_entry.pack()
# 键盘事件绑定
self.root.bind('q', self.quit_app)
# 线程和标志位
self.click_thread = None
self.running = False
# 开启连点函数
def start_clicking(self):
interval = self.click_interval.get() # 获取点击间隔
if interval <= 0: # 间隔值为负则弹出错误消息框
messagebox.showerror("错误", "点击间隔必须大于0秒")
return
self.start_button.config(state=tk.DISABLED) # 禁用开始按钮
self.stop_button.config(state=tk.NORMAL) # 启动停止按钮
self.running = True # 设置运行变量为True
# 创建新线程对象,不影响主线程(target即自动点击方法,下面已经封装好的、args是将这个间隔变量传给方法)
self.click_thread = threading.Thread(target=self.auto_click_thread, args=(interval,))
self.click_thread.start() # 执行该线程
# 停止连点函数
def stop_clicking(self):
self.start_button.config(state=tk.NORMAL)
self.stop_button.config(state=tk.DISABLED)
self.running = False
# 自动点击线程函数
def auto_click_thread(self, interval):
while self.running: # 监听running变量
pyautogui.click() #模拟点击操作
self.root.update() # 实时更新界面,避免卡顿
self.root.after(int(interval * 1000)) # 毫秒级延迟
# 退出应用程序的函数
def quit_app(self, event=None):
if self.click_thread and self.click_thread.is_alive():
self.stop_clicking() # 调用停止点击函数
self.click_thread.join() # 等待该线程结束(释放资源)
self.root.destroy() # 摧毁所有窗口
if __name__ == "__main__":
root = tk.Tk() # 创建根窗口对象
app = AutoClickerApp(root) # 实例化root对象
root.mainloop() # 启动根窗口的监听模式