Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Mac无法在Tkinter中注册密钥释放_Python_Python 3.x_Tkinter_Keyboard_Keyrelease - Fatal编程技术网

Python Mac无法在Tkinter中注册密钥释放

Python Mac无法在Tkinter中注册密钥释放,python,python-3.x,tkinter,keyboard,keyrelease,Python,Python 3.x,Tkinter,Keyboard,Keyrelease,在windows计算机上运行下面的代码非常有效。但是,当我在MacBook上运行按键释放事件时,canvas.bind_all('',func),当按下w时返回,未释放 问题:tkinter或其他标准库中是否有修复/解决方案?我想避免将新库下载为pygame或键盘,因为我不允许在学校电脑上下载 *窗口(win 10)有python 3.5.2,Mac(Catalina 10.15.6)有python 3.8.5 from tkinter import* tk = Tk() canvas = C

在windows计算机上运行下面的代码非常有效。但是,当我在MacBook上运行按键释放事件时,
canvas.bind_all('',func)
,当按下w时返回,未释放

问题:tkinter或其他标准库中是否有修复/解决方案?我想避免将新库下载为pygame或键盘,因为我不允许在学校电脑上下载

*窗口(win 10)有python 3.5.2,Mac(Catalina 10.15.6)有python 3.8.5

from tkinter import*

tk = Tk()
canvas = Canvas(tk, width = 100, height = 100)
canvas.pack()

def func(event):
    print('Hello')

while True:
    canvas.bind_all('<KeyRelease-w>', func)
    tk.update()
从tkinter导入*
tk=tk()
画布=画布(tk,宽度=100,高度=100)
canvas.pack()
def func(事件):
打印('你好')
尽管如此:
canvas.bind_all(“”,func)
tk.update()

编辑:根据评论,这可能是Tkinter库中的错误但是关于可能的解决方法的问题仍然没有解决。

这在我的python 3.7.4 win 10上运行良好。如果你按住w键,你会注意到什么都没有发生,你按下并离开,然后它会打印出来,对吗?就是这样,它在windows上工作,而不是在Mac上。当我在windows上按w键时,除非我按了按钮,否则不会发生任何事情,这是应该的。在Mac上,在我还没来得及发布类似问题但没有解决方案之前,按w键“hello”会立即弹出“hello”,我想可能是个错误。你认为我们可以期待修复吗?很有趣。我看到不同的键有不同的行为。按住“l”键(小写l)可以让我看到源源不断的新闻/发布事件。拿着“w”不动。即使没有任何自定义绑定,我也能看到不同键之间的不同行为。我希望新闻/发布活动源源不断,但奇怪的是,有时会有一个单一的、即时的新闻和发布组合。这在我的python 3.7.4 win 10上运行良好。如果你按住w键,你会注意到什么都没有发生,你按下并离开,然后它会打印出来,对吗?就是这样,它在windows上工作,而不是在Mac上。当我在windows上按w键时,除非我按了按钮,否则不会发生任何事情,这是应该的。在Mac上,在我还没来得及发布类似问题但没有解决方案之前,按w键“hello”会立即弹出“hello”,我想可能是个错误。你认为我们可以期待修复吗?很有趣。我看到不同的键有不同的行为。按住“l”键(小写l)可以让我看到源源不断的新闻/发布事件。拿着“w”不动。即使没有任何自定义绑定,我也能看到不同键之间的不同行为。我预计新闻/发布活动会源源不断,但奇怪的是,有时会有一个单一的、即时的新闻和发布组合。