winsound в переменной tkinter

Я сделал игру в палач в Tkinter с кнопками для каждой буквы, каждая кнопка связана с функцией, которая будет обрабатывать письмо и сообщать мне, правильно оно или нет. Как я могу сделать функцию правильным звуком и неправильным звуком, я не хочу говорить, откуда я получаю свой файл WAV, потому что он будет перемещаться (он всегда будет в том же файле, что и моя программа). Я не хочу скачать другой модуль и ответы на другой вопрос не работают. спасибо заранее,

Я попробовал это, но он не издал ни звука:

def no():
    lambda: PlaySound('wrong.wav', SND_FILENAME)
def yes():
    lambda: PlaySound('right.wav', SND_FILENAME)

1 ответ

Вы, кажется, неясно, что lambda делает:

Python поддерживает создание анонимных функций (то есть функций, которые не связаны с именем) во время выполнения, используя конструкцию, называемую "лямбда".

В приведенном вами примере вы не создали никакой анонимной функции, поэтому они совершенно не нужны. Просто удалите их, и все должно работать.

def no():
    PlaySound('wrong.wav', SND_FILENAME)
def yes():
    PlaySound('right.wav', SND_FILENAME)

Однако помните, что winsound предназначен только для Windows (поэтому не требуется кроссплатформенная разработка), и для использования этих функций вам нужно from winsound import *

Другие вопросы по тегам