Ich bin dabei ein Programm zu schreiben, dass Sounds abspielt, sobald man auf diesen Button klickt.
Dafür hab ich eine Prozedur
Code: Alles auswählen
def play_sound(name)
Danach habe ich Buttons erstellt etc.
Code: Alles auswählen
def play_test01(e):
play_sound('test01')
But=Button(root, text = 'test01')
But.pack()
Widget.bind(But, '<Button-1>', play_test01)
Das ganze will ich jetzt über eine for-Schleife lösen:
Code: Alles auswählen
titel=['test01', 'test02']
for tit in titel:
Button(root, command= play_sound(tit), text=tit).pack()
Der Sound wird abgespielt, danach erscheint der Button.
Wird der Button geklickt, so passiert nichts.
Eine andere Variante:
Code: Alles auswählen
for tit in titel:
Button(root, command=lambda: play_sound(tit), text=tit).pack()
Die Button erscheinen. Klickt man einen diesen Button an, so wird 'test02' abgespielt, obwohl die Beschriftung stimmt!
Kann mir jemand sagen, was ich verändern muss?