加一个判断条件,点击开始或者按下回车键后当用户点击时开始执行click方法:import pyautogui import time # 设置连点次数和延迟时间 click_times = 100 delay_time = 1 # 获取当前鼠标位置 # 定义点击函数 def click(): for i in range(click_times): x, y = pyautogui.position() pyautogui.click(x, y) time.sleep(delay_time) print(pyautogui.position()) # 创建 Tkinter 界面 root = tk.Tk() root.title('Auto Clicker') # 添加按钮 start_button = tk.Button(root, text='Start', command=click) start_button.pack() exit_button = tk.Button(root, text='Exit', command=root.quit) exit_button.pack() # 绑定键盘 Enter 和 Esc 按钮 root.bind('<Return>', lambda event: click()) root.bind('<Escape>', lambda event: root.quit()) root.mainloop()
时间: 2023-06-19 15:04:49 浏览: 179
这个代码看起来比之前的代码更完整一些,添加了一些用户交互的功能。这个代码是一个自动点击器,可以让鼠标自动点击屏幕上的按钮或者其他元素。用户可以通过点击“Start”按钮或者按下回车键来启动自动点击功能。点击次数和延迟时间可以通过修改代码中的变量来调整。同时,用户也可以通过点击“Exit”按钮或者按下Esc键来退出程序。这个代码使用了pyautogui库来模拟鼠标点击,使用了time库来控制点击的间隔时间。在Tkinter界面中,使用了Button和bind方法来创建按钮和绑定键盘事件。
相关问题
import pyautogui import time import tkinter as tk import subprocess # 用subprocess打开Internet Explorer subprocess.Popen('C:\Program Files\Internet Explorer\iexplore.exe') # 创建 GUI 界面 root = tk.Tk() root.title("选择账号") # 创建标签和选项 tk.Label(root, text="请选择账号:").grid(row=0, column=0, sticky=tk.W, padx=10, pady=10) options = [ ("马家益", "tb021 A123456"), ("王中豪", "tb121 A123456"), ("陈诗源", "tb058 A123456"), ("陈亮", "tb057 12345678"), ("张少芬", "tb017 A123456"), ("海玲", "tb020 A123456"), ("张科", "tb090 Tbyy123456@"), ("邱进东", "tb110 A123456"), ("黎福妮", "tb095 HD@123456"), ("任国军", "tb051 HD@123456"), ("叶穗君", "tb032 A*123456") ] var = tk.StringVar() var.set("tb057 12345678") # 设置默认值为陈亮选项 for i, option in enumerate(options): tk.Radiobutton(root, text=option[0], variable=var, value=option[1]).grid(row=i+1, column=0, sticky=tk.W, padx=10, pady=5) # 创建登录按钮的函数 def login(): # 获取选择的账号和密码 choice = var.get() if not choice: tk.messagebox.showwarning("警告", "请选择一个账号!") return username, password = choice.split() # 单击左键并输入账号 pyautogui.click(843, 440) pyautogui.typewrite(username) # 单击左键并输入密码,然后按回车键 time.sleep(0.01) # 等待界面加载 pyautogui.click(952, 495) pyautogui.typewrite(password) pyautogui.press('enter') # 创建登录按钮 tk.Button(root, text="登录", command=login).grid(row=len(options)+1, column=0, pady=10) root.mainloop() # 切换到登录界面 pyautogui.hotkey('alt', 'tab'),当用户点击登录后,关闭PY程序,修改一下这个代码
好的,你可以在login函数的最后添加一行代码:
```
root.destroy()
```
这样在用户点击登录按钮后,会销毁GUI界面,整个程序也会随之退出。
import pyautogui import time import tkinter as tk import subprocess # 用subprocess打开Internet Explorer subprocess.Popen('C:\Program Files\Internet Explorer\iexplore.exe') # 创建 GUI 界面 root = tk.Tk() root.title("选择账号") # 创建标签和选项 tk.Label(root, text="用IE打开HIS系统,请选择账号:").grid(row=0, column=0, sticky=tk.W, padx=10, pady=10) options = [ ("马家益", "tb021 A123456"), ("王中豪", "tb121 A123456"), ("陈诗源", "tb058 A123456"), ("陈亮", "tb057 12345678"), ("张少芬", "tb017 A123456"), ("海玲", "tb020 A123456"), ("张科", "tb090 Tbyy123456@"), ("邱进东", "tb110 A123456"), ("黎福妮", "tb095 HD@123456"), ("任国军", "tb051 HD@123456"), ("叶穗君", "tb032 A*123456") ] var = tk.StringVar() var.set("") # 设置默认值为空 for i, option in enumerate(options): tk.Radiobutton(root, text=option[0], variable=var, value=option[1]).grid(row=i+1, column=0, sticky=tk.W, padx=10, pady=5) # 创建登录按钮的函数 def login(): # 获取选择的账号和密码 choice = var.get() if not choice: tk.messagebox.showwarning("警告", "请选择一个账号!") return username, password = choice.split() # 单击左键并输入账号 pyautogui.click(843, 440) pyautogui.typewrite(username) # 单击左键并输入密码,然后按回车键 time.sleep(1) # 等待界面加载 pyautogui.click(952, 495) pyautogui.typewrite(password) pyautogui.press('enter') # 创建登录按钮 tk.Button(root, text="登录", command=login).grid(row=len(options)+1, column=0, pady=10) root.mainloop(),帮我默认设置成陈亮选项
你可以将以下代码添加到程序的最后几行,这样默认选中陈亮选项:
```
var.set("tb057 12345678")
```
完整代码如下:
```
import pyautogui
import time
import tkinter as tk
import subprocess
# 用subprocess打开Internet Explorer
subprocess.Popen('C:\Program Files\Internet Explorer\iexplore.exe')
# 创建 GUI 界面
root = tk.Tk()
root.title("选择账号")
# 创建标签和选项
tk.Label(root, text="用IE打开HIS系统,请选择账号:").grid(row=0, column=0, sticky=tk.W, padx=10, pady=10)
options = [
("马家益", "tb021 A123456"),
("王中豪", "tb121 A123456"),
("陈诗源", "tb058 A123456"),
("陈亮", "tb057 12345678"),
("张少芬", "tb017 A123456"),
("海玲", "tb020 A123456"),
("张科", "tb090 Tbyy123456@"),
("邱进东", "tb110 A123456"),
("黎福妮", "tb095 HD@123456"),
("任国军", "tb051 HD@123456"),
("叶穗君", "tb032 A*123456")
]
var = tk.StringVar()
var.set("tb057 12345678") # 设置默认值为陈亮选项
for i, option in enumerate(options):
tk.Radiobutton(root, text=option[0], variable=var, value=option[1]).grid(row=i+1, column=0, sticky=tk.W, padx=10, pady=5)
# 创建登录按钮的函数
def login():
# 获取选择的账号和密码
choice = var.get()
if not choice:
tk.messagebox.showwarning("警告", "请选择一个账号!")
return
username, password = choice.split()
# 单击左键并输入账号
pyautogui.click(843, 440)
pyautogui.typewrite(username)
# 单击左键并输入密码,然后按回车键
time.sleep(1) # 等待界面加载
pyautogui.click(952, 495)
pyautogui.typewrite(password)
pyautogui.press('enter')
# 创建登录按钮
tk.Button(root, text="登录", command=login).grid(row=len(options)+1, column=0, pady=10)
root.mainloop()
```
阅读全文