Tkinter 使用按钮或按键调用功能
Tkinter call up a function with a button or with a key
我需要创建一个函数,当我按下 GUI 的某个按钮或按下 ENTER 等键时启动。这是可能的?
我已经创建了执行这两种情况之一的单一功能,我可以合并它们吗?我附上代码以便更好地理解
LoginWindow = tk.Tk() #code of function with button
canvas = tk.Canvas(LoginWindow, width=480, height=120, bg='lightsteelblue2', relief='raised')
canvas.pack()
def getLogin():
tk.messagebox.showinfo("Hello", "Hello")
LogButton = tk.Button(text="Login", command=getLogin, bg='green', fg='white', font=('helvetica', 12, 'bold'))
canvas.create_window(240, 60, window=LogButton)
LoginWindow.mainloop()
####
####
LoginWindow = tk.Tk() #code of function with ENTER key
canvas = tk.Canvas(LoginWindow, width=480, height=120, bg='lightsteelblue2', relief='raised')
canvas.pack()
def getLogin(event):
tk.messagebox.showinfo("Hello", "Hello")
LoginWindow.bind('<Return>', getLogin)
LoginWindow.mainloop()
有一种方法可以结合这两个功能
您可以像这样更改函数签名:
def getLogin(event=None):
tk.messagebox.showinfo("Hello", "Hello")
那么可以在两种不同的情况下调用同一个函数。
我需要创建一个函数,当我按下 GUI 的某个按钮或按下 ENTER 等键时启动。这是可能的? 我已经创建了执行这两种情况之一的单一功能,我可以合并它们吗?我附上代码以便更好地理解
LoginWindow = tk.Tk() #code of function with button
canvas = tk.Canvas(LoginWindow, width=480, height=120, bg='lightsteelblue2', relief='raised')
canvas.pack()
def getLogin():
tk.messagebox.showinfo("Hello", "Hello")
LogButton = tk.Button(text="Login", command=getLogin, bg='green', fg='white', font=('helvetica', 12, 'bold'))
canvas.create_window(240, 60, window=LogButton)
LoginWindow.mainloop()
####
####
LoginWindow = tk.Tk() #code of function with ENTER key
canvas = tk.Canvas(LoginWindow, width=480, height=120, bg='lightsteelblue2', relief='raised')
canvas.pack()
def getLogin(event):
tk.messagebox.showinfo("Hello", "Hello")
LoginWindow.bind('<Return>', getLogin)
LoginWindow.mainloop()
有一种方法可以结合这两个功能
您可以像这样更改函数签名:
def getLogin(event=None):
tk.messagebox.showinfo("Hello", "Hello")
那么可以在两种不同的情况下调用同一个函数。