擅长:python、mysql、java
<p>以下是一个解决方案,它将焦点从小部件上移开,因此绑定不会被触发:</p>
<pre><code>import winsound
from tkinter import *
def beep(event):
dummy.focus_set() #setting focus to dummy
winsound.Beep(440, 1000) #playing it
root.after(1000,frame.focus_set) #setting focus back after playing for 1000 ms
root = Tk()
dummy = Label() #making a dummy widget
dummy.pack()
frame = Frame(root, width=100, height=100)
frame.bind("<space>",beep)
frame.pack()
frame.focus_set()
root.mainloop()
</code></pre>
<p>我评论它是为了更好地理解,但这只是一种方法,理解起来也没那么复杂</p>
<p>还请记住,在所有使用<code>winsound</code>的情况下,只要该蜂鸣音开始并结束播放,GUI就会无响应,也就是说,GUI会在1秒内无响应(在您的情况下)</p>