如何在每个 tkinter.text 输入上播放声音样本?
How to play a sound sample on every tkinter.text input?
我需要在每个 tkinter.text 输入时播放打字机键样本。
我遇到了 Playsound 模块,但我不知道如何收听输入。
您可以使用 bind
并设置一个函数来在触发绑定时播放声音。
import tkinter as tk
def key(event):
print("pressed", repr(event.char))
# Play sound here
root = tk.Tk()
text = tk.Text(root)
text.pack()
text.bind('<Key>', key)
root.mainloop()
谢谢,我想出了一个非常相似的解决方案,但它真的很慢。我基本上是在写一个简单的打字机模拟器,所以每个键入的字母都会重现按键声音。
import tkinter as tk
from PIL import Image, ImageTk
from playsound import playsound
def key(event):
key = event.char
playsound("C:/Users/Isma/key1.mp3")
win = tk.Tk()
frame = tk.Frame(win, width=300, height=400)
frame.grid(row=1, column=0)
text = tk.Text(frame)
text.grid(row=0,column=0)
text.bind('<Key>',lambda a : key(a))
image = Image.open("C:/Users/Isma/swintec1.jpg")
photo = ImageTk.PhotoImage(image)
label = tk.Label(frame,image=photo)
label.image = photo
label.grid(row=3,column=0)
win.mainloop()
我需要在每个 tkinter.text 输入时播放打字机键样本。 我遇到了 Playsound 模块,但我不知道如何收听输入。
您可以使用 bind
并设置一个函数来在触发绑定时播放声音。
import tkinter as tk
def key(event):
print("pressed", repr(event.char))
# Play sound here
root = tk.Tk()
text = tk.Text(root)
text.pack()
text.bind('<Key>', key)
root.mainloop()
谢谢,我想出了一个非常相似的解决方案,但它真的很慢。我基本上是在写一个简单的打字机模拟器,所以每个键入的字母都会重现按键声音。
import tkinter as tk
from PIL import Image, ImageTk
from playsound import playsound
def key(event):
key = event.char
playsound("C:/Users/Isma/key1.mp3")
win = tk.Tk()
frame = tk.Frame(win, width=300, height=400)
frame.grid(row=1, column=0)
text = tk.Text(frame)
text.grid(row=0,column=0)
text.bind('<Key>',lambda a : key(a))
image = Image.open("C:/Users/Isma/swintec1.jpg")
photo = ImageTk.PhotoImage(image)
label = tk.Label(frame,image=photo)
label.image = photo
label.grid(row=3,column=0)
win.mainloop()