自动化脚本让一切更自然!

Python游戏自动化脚本|千花代码分享基地-Mrnsht.com

当前位置: 主页 > 脚本代码

全能通用鼠标点点器

时间:2025-09-01 21:27来源:本站原创 作者:千花 点击:
支持所有能点的东西,适用于游戏加属性自动点击,设置点击次数和间隔时间后,按f1或者点击界面按钮开始,暂停也可按f1。 import tkinter as tk from tkinter import ttk import pyautogui import thre

支持所有能点的东西,适用于游戏加属性自动点击,设置点击次数和间隔时间后,按f1或者点击界面按钮开始,暂停也可按f1。


import tkinter as tk

from tkinter import ttk

import pyautogui

import threading

import time


class AutoClickerApp:

   def __init__(self, root):

       self.root = root

       self.root.title("千花鼠标连点器 v2.1")

       self.root.geometry("400x300")

       

       self.setup_ui()

       self.running = False

       self.click_thread = None

       self.click_count = 0

       

       # 热键绑定

       self.root.bind('<F1>', lambda e: self.toggle_clicking())

       self.root.bind('<Escape>', lambda e: self.stop_clicking())


   def setup_ui(self):

       # 主框架

       main_frame = ttk.Frame(self.root, padding=20)

       main_frame.pack(fill=tk.BOTH, expand=True)

       

       # 点击设置

       settings_frame = ttk.LabelFrame(main_frame, text="点击设置", padding=10)

       settings_frame.pack(fill=tk.X, pady=5)

       

       # 点击次数

       ttk.Label(settings_frame, text="点击次数 (0=无限):").grid(row=0, column=0, sticky=tk.W)

       self.count_entry = ttk.Entry(settings_frame, width=15)

       self.count_entry.grid(row=0, column=1, padx=5, pady=5)

       self.count_entry.insert(0, "100")

       

       # 间隔时间

       ttk.Label(settings_frame, text="间隔时间(秒):").grid(row=1, column=0, sticky=tk.W)

       self.interval_entry = ttk.Entry(settings_frame, width=15)

       self.interval_entry.grid(row=1, column=1, padx=5, pady=5)

       self.interval_entry.insert(0, "0.1")

       

       # 状态显示

       self.status_var = tk.StringVar()

       self.status_var.set("准备就绪 | 点击次数: 0")

       status_label = ttk.Label(main_frame, textvariable=self.status_var)

       status_label.pack(pady=10)

       

       # 控制按钮

       btn_frame = ttk.Frame(main_frame)

       btn_frame.pack(pady=5)

       

       self.start_btn = ttk.Button(btn_frame, text="开始 (F1)", command=self.start_clicking)

       self.start_btn.pack(side=tk.LEFT, padx=5)

       

       self.stop_btn = ttk.Button(btn_frame, text="停止 (ESC)", command=self.stop_clicking, state=tk.DISABLED)

       self.stop_btn.pack(side=tk.LEFT, padx=5)


   def toggle_clicking(self):

       if self.running:

           self.stop_clicking()

       else:

           self.start_clicking()


   def start_clicking(self):

       if self.running:

           return

           

       try:

           count = int(self.count_entry.get())

           interval = float(self.interval_entry.get())

           if interval <= 0:

               raise ValueError("间隔时间必须大于0")

       except ValueError as e:

           self.status_var.set(f"错误: {str(e)}")

           return

           

       self.running = True

       self.click_count = 0

       self.update_status("运行中...")

       

       self.start_btn.config(state=tk.DISABLED)

       self.stop_btn.config(state=tk.NORMAL)

       

       self.click_thread = threading.Thread(

           target=self.click_loop,

           args=(count, interval),

           daemon=True

       )

       self.click_thread.start()


   def click_loop(self, count, interval):

       while self.running and (count <= 0 or self.click_count < count):

           pyautogui.click()

           self.click_count += 1

           self.root.after(0, self.update_counter)

           time.sleep(interval)

           

       self.root.after(0, self.stop_clicking)


   def stop_clicking(self):

       self.running = False

       if self.click_thread and self.click_thread.is_alive():

           self.click_thread.join()

           

       self.update_status("已停止")

       self.start_btn.config(state=tk.NORMAL)

       self.stop_btn.config(state=tk.DISABLED)


   def update_counter(self):

       self.status_var.set(f"运行中 | 点击次数: {self.click_count}")


   def update_status(self, message):

       self.status_var.set(f"{message} | 点击次数: {self.click_count}")


if __name__ == "__main__":

   root = tk.Tk()

   app = AutoClickerApp(root)

   root.mainloop()

(责任编辑:admin)
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容