【发布时间】:2018-01-17 01:17:26
【问题描述】:
我在一个 Kivy ScreenManager 中设置了一个 Screen(myScreen 只是一个继承 Screen 的类)
class firstScreen(myScreen):
def __init__(self,**kwargs):
super(firstScreen, self).__init__(**kwargs)
self.name = "first"
self.add_widget(Button(on_release = switchScreens("second")))
我还设置了第二个屏幕:
class secondScreen(myScreen):
def __init__(self,**kwargs):
super(secondScreen, self).__init__(**kwargs)
self.name = "second"
然后我设置我的 ScreenManager:
sm = ScreenManager()
sm.add_widget(firstScreen())
sm.add_widget(secondScreen())
这里是 switchScreens 的代码:
def switchScreens(next):
sm.current = next
当我运行 sm 时,出现以下错误:
kivy.uix.screenmanager.ScreenManagerException: 没有名称为“second”的屏幕。
这对我来说似乎是错误的,因为我将 secondScreen() 添加到 sm,名称为“second”。
如何获取 firstScreen 上的 Button 以将应用正确发送到 secondScreen?
【问题讨论】:
标签: python kivy kivy-language