正在尝试使用Tkinter的鼠标移动模拟器



我正在做一个项目;例如,它应该是向上移动鼠标;射击游戏后坐力。

然而,我面临着一个巨大的问题,我无法理解;在Tkinter上,我不能有While循环,因为Tkinter的构建方式及其连续循环。我需要使用这个界面,因为我有一个文本标签,如果鼠标移动是否发生,它应该输出。

目标鼠标移动仅在用户创建键盘输入时发生,例如按下"z";鼠标模拟器=打开//反冲开始起作用

在导入Tkinter时,有某种循环来检查键盘输入,并将数据检索回txtlabel,然后启动鼠标移动任务,直到用户决定停止。

  • 对不起,如果我的措辞令人困惑。第一次在这里发帖

我在Tkinter程序下的代码示例

使用While循环冻结程序而True:#检查输入如果键盘.is_pressed('z'(:movement_bool=非movement_bool

如果movement_bool==True并且鼠标已按下(按钮="左"(:#使用win32api向下移动鼠标

使用tkinter,您不需要进行循环和检查键盘按压情况。当tkinter检测到按键和/或按键释放时,您可以要求它调用您想要的任何函数。术语是将事件绑定到函数。当tkinter检测到请求的事件时,它调用函数并传递一个表示该事件的对象。

下面是一个在按下"z"键时打印消息的示例:

import tkinter as tk
def handle_z(event):
print("z was pressed")
root = tk.Tk()
canvas = tk.Canvas(root, width=400, height=400)
canvas.pack()
# make sure that keyboard events are routed to the canvas
canvas.focus_set()
# call our function when the "z" key is pressed
canvas.bind("<z>", handle_z)
root.mainloop()

最新更新