Python 基维:如何让每个按钮播放不同的声音

Python 基维:如何让每个按钮播放不同的声音,python,audio,kivy,Python,Audio,Kivy,所以我在写一个鼓垫: from kivy.app import App from kivy.uix.label import Label from kivy.uix.gridlayout import GridLayout from kivy.uix.button import Button from kivy.core.audio import SoundLoader class GridAction(Button): pass class MakingGrid(GridLay

所以我在写一个鼓垫:

from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.gridlayout import GridLayout
from kivy.uix.button import Button
from kivy.core.audio import SoundLoader


class GridAction(Button):
    pass


class MakingGrid(GridLayout):

    def __init__(self, *args, **kwargs):
        super(MakingGrid, self).__init__(*args, **kwargs)

        for i in range(16):
            grid_action = GridAction()
            grid_action.bind(on_release=self.button_pressed)
            self.add_widget(grid_action)

    def button_pressed(self, button):
        print('pressed')


class MyApp(App):
    def build(self):
        return MakingGrid(cols=4)


if __name__ == "__main__":
    MyApp().run()

因此,有一个按钮网格,目的是使它们听起来不同,但我不知道如何做到这一点。请帮忙。另外,请提前感谢,如果您看到这段代码中有任何缺点,请告诉我,我是初学者。

播放音频的简单方法是使用kivy's


除此之外,我不清楚你的问题到底是什么。一般的解决方法是为每个GridAction提供自己的audio\u file属性,该属性包含指向所需声音的文件路径,并绑定on\u press事件以在此位置播放声音。

您是如何制作声音的?您按下按钮时有可变按钮,为什么要使用它?