在 tkinter 中为 'windows' 按钮添加事件?

Add event for 'windows' button in tkinter?

我的代码:

from tkinter import*
root = Tk()
root.geometry("500x500")
def moti(event):
    root.destroy()
root.bind("<Window>",moti)
root.mainloop()

我要绑定这个key

那么,如何在windows中绑定这个键呢?谢谢!

从一个实际例子中,我发现 windows 键被称为 <Win_L>(左键) <Win_R> 右键),你可以找到使用此代码自行解决:

import tkinter as tk

root = tk.Tk()

def event(e):
    print(e.keysym)

root.bind('<Key>',event)
root.mainloop()

一旦 window 获得焦点并按下它,这将打印按键名称。

所以 TL;DR:windows 键的键名是 <Win_L>。另请阅读 keysyms manual page - Tk-built-in-commands

w.bind('<Win_L>',callback)

注意: 在 Windows 系统上您可以使用 <Win_L>,在 ubuntu 系统上它将是 <Super_L> .所以一个安全的方法是:

from tkinter import *

root = Tk()

def event(e):
    print(f'You just clicked: {e.keysym}')

try:
    root.bind('<Win_L>',event)
except TclError:
    root.bind('<Super_L>',event)

root.mainloop()