【发布时间】:2020-09-16 19:05:57
【问题描述】:
因此下拉菜单会显示所有选项,但单击它们时不会调用回调函数。 问题可能是什么? 提前致谢! 这是main.py:
def __init__(self, **kwargs):
self.screen = Builder.load_file('main.kv')
channels = ['channel1', 'channel2', 'channel3', 'channel4']
self.channels_menu = MDDropdownMenu(
caller=self.screen.ids.add_client_screen.ids.channels_drop_item,
items=[{"text": i} for i in channels],
position="center",
width_mult=4,
)
self.channels_menu.bind(on_release=self.menu_callback)
def menu_callback(self, instance_menu, instance_menu_item):
print(instance_menu, instance_menu_item)
def build(self):
return self.screen
这是.kv:
<AddClientScreen>:
text: "AddClient"
MDBoxLayout:
orientation: "vertical"
MDBoxLayout:
spacing: 50
orientation: "vertical"
size_hint: 1, 0.65
MDDropDownItem:
id: channels_drop_item
text: "Channel"
on_release: app.channels_menu.open()
【问题讨论】: