[英]How to bind multiple events to one function python tkinter
有没有更好的方法来执行以下操作:
master.bind("<Button-1>", function)
master.bind("<Button-2>", function)
master.bind("<Button-3>", function)
我想用不到三行代码将 3 个事件绑定到一个 function。 我知道这可能是不可能的。 我只是想知道你是否可以这样做:
master.bind("<Button-1>" and "<Button-2>" and "<Button-3>", function)
这不起作用,因为它只绑定"<Button-3>"
。 使用or
代替and
仅绑定"<Button-1>"
。
编辑:我可以使用通用的"<Button>"
,例如:
master.bind("<Button>", function)
我想要一个更通用的示例,例如可用于"<KP_0>"
和"<Button-1>"
示例。
我不相信 Tkinter 支持此功能,因为它本质上是一个循环。
如果你真的需要你的代码都在一行,试试这个。
master.bind("<Button-1>", function), master.bind("<Button-2>", function), master.bind("<Button-3>", function)
不是最好的做事方式,但它应该有效。
你可以做类似的事情
for b in ["<Button-1>", "<Button-2>", "<Button-3>"]: master.bind(b, function)
Tkinter 本身确实没有更漂亮的方法。 您可以创建一个 for 循环并重用保持不变的部分,但我建议将其全部写出来。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.