python - 如何将 Shift-Click 选项添加到按钮
问题描述
我是 Python 新手,尤其是 GUI Python,我正在尝试弄清楚如何向我的按钮添加两个函数。
例如,我希望用户能够: 正常单击按钮和按钮执行功能一 shift 单击按钮和按钮执行功能二。
我正在为 GUI 使用 tkinter。
按钮代码:
任何帮助表示赞赏。
b1 = Button(window, text = "Import", width = 12, command = functionOne)
b1.grid(row = 0, column = 2)
解决方案
您可以这样做 - 无需设置按钮的command
关键字参数,只需将按钮捕获的不同事件绑定到不同的函数即可。这是有关事件和绑定事件的更多信息。
import tkinter as tk
class Application(tk.Tk):
def __init__(self, *args, **kwargs):
tk.Tk.__init__(self, *args, **kwargs)
self.title("Test")
self.geometry("128x32")
self.resizable(width=False, height=False)
self.button = tk.Button(self, text="Try Me")
self.button.pack()
self.button.bind("<Button-1>", self.normal_click)
self.button.bind("<Shift-Button-1>", self.shift_click)
def normal_click(self, event):
print("Normal Click")
def shift_click(self, event):
print("Shift Click")
def main():
application = Application()
application.mainloop()
return 0
if __name__ == "__main__":
import sys
sys.exit(main())