【发布时间】:2021-11-26 07:26:11
【问题描述】:
我想到了使用event.widget.winfo_parent(),但它返回一个str 和widget 的完整路径,我无法抓取包装器将其放入if 以防止该语句阻止执行。因此,我的问题是是否有更正确的方法来执行此操作或以某种方式获取容器,在这种情况下来自 self.btn 并在语句中使用它。谢谢
挑战在于在按钮之间设置异常,在示例中我只设置了两个,但如果我希望为几个按钮而不是全部按钮设置异常该怎么办?
from tkinter import *
class Example(Frame)
def __init__(self, master, *args, **kwargs):
super().__init__(master, *args, **kwargs)
self.frame = Frame(self, bg='yellow')
self.frame .pack(side=TOP, fill=BOTH)
self.cnt = Frame(self.frame, bg='green2')
self.cnt .pack(side=TOP, fill=BOTH)
self.btn = Button(self.cnt, text='Button 1 ')
self.btn.pack()
self.btn2 = Button(self.cnt, text='Button 2')
self.btn2.pack()
self.bind_all('<Motion-1>', self.hellow)
def hellow(self, event):
print('I always run how I want')
root = Tk()
app = Example(root)
app .pack(side=TOP, fill=BOTH)
root.mainloop()
【问题讨论】: