【发布时间】:2020-12-27 10:03:46
【问题描述】:
我想使用 kivy 制作一个音乐播放器应用程序,它是 python 中的材料设计 我成功找到 .mp3 文件并播放它们 但问题是我无法找到绑定 OneLineListItem 到任何函数(例如,如果我们单击并释放列表项,我想让 python 播放那首歌)我的代码是 -:
from kivy.lang import Builder
from kivymd.uix.list import OneLineListItem
from kivymd.app import MDApp
import os
helper_string = """
Screen:
BoxLayout:
orientation: "vertical"
ScrollView:
MDList:
id: scroll
"""
class MainApp(MDApp):
def build(self):
screen = Builder.load_string(helper_string)
return screen
def on_start(self):
for root, dirs, files in os.walk('C:/'):
for file in files:
if file.endswith('.mp3'):
required_file = file
the_location = os.path.abspath(required_file)
location_list = list(the_location)
song_name = list(required_file)
self.root.ids.scroll.add_widget(OneLineListItem(text=required_file))
# print(required_file)
MainApp().run()
您可以看到,在这段代码中,for 循环遍历所有文件并将它们添加到滚动视图中 我想让 for 循环向播放歌曲的列表项添加一个 on_release 操作(列表项上的歌曲名称)。每个列表项都应该有自己的歌曲名称作为文本,当我们点击标签时,它将播放名称在标签上的歌曲
如果 OneLineListItem 无法执行此 on_release 操作,那么我应该在那个地方使用什么(例如 MDFlatRectangleButton 或其他任何东西)以及我应该如何使用它来使我的音乐播放器正常工作(我的意思是会增加播放歌曲的功能)
【问题讨论】:
标签: python python-3.x kivy kivy-language kivymd