python tkinter button状态_python – 如何识别Tkinter中何时释放Button?

在Tkinter GUI应用中,为了实现按钮按下与释放的交互,可以通过绑定< ButtonPress >和< ButtonRelease >事件来识别。例如,创建一个Button对象,并为其设置事件监听函数,当按钮被按下或释放时调用相应的函数进行处理。这样可以在按钮按下时启动机器人移动,并在按钮释放时停止机器人。
摘要由CSDN通过智能技术生成

我正在使用Tkinter制作GUI并驱动机器人.

我有4个按钮:FORWARD,RIGHT,BACKWARD和LEFT.我希望只要按下按钮就让机器人移动,并在释放按钮时停止.

如何识别Tkinter中何时释放按钮?

最佳答案 您可以为< ButtonPress>创建绑定.和< ButtonRelease>事件独立.

这是一个有效的例子:

import Tkinter as tk

import time

class Example(tk.Frame):

def __init__(self, *args, **kwargs):

tk.Frame.__init__(self, *args, **kwargs)

self.button = tk.Button(self, text="Press me!")

self.text = tk.Text(self, width=40, height=6)

self.vsb = tk.Scrollbar(self, command=self.text.yview)

self.text.configure(yscrollcommand=self.vsb.set)

self.button.pack(side="top")

self.vsb.pack(side="right", fill="y")

self.text.pack(side="bottom", fill="x")

self.button.bind("", self.on_press)

self.button.bind("", self.on_release)

def on_press(self, event):

self.log("button was pressed")

def on_release(self, event):

self.log("button was released")

def log(self, message):

now = time.strftime("%I:%M:%S", time.localtime())

self.text.insert("end", now + " " + message.strip() + "\n")

self.text.see("end")

if __name__ == "__main__":

root = tk.Tk()

Example(root).pack(side="top", fill="both", expand=True)

root.mainloop()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值