【发布时间】:2021-06-04 13:40:58
【问题描述】:
我的代码由 2 个页面组成,每个页面只有一个按钮,按下它应该显示另一个页面:
class Paging(ScreenManager):
def __init__(self, **kwargs):
super(Paging, self).__init__(**kwargs)
self.sm = ScreenManager(transition=RiseInTransition())
self.sm.add_widget(Test1(name='screen_one'))
self.sm.add_widget(Test2(name='screen_two'))
class Test1(Widget, Screen):
def __init__(self, **kwargs):
super(Test1, self).__init__(**kwargs)
btn1 = Button(text='page1', font_size="15sp",
btn1.bind(on_press = self.callback)
self.add_widget(btn1)
def callback(self):
print("Button is pressed")
self.manager.transition.direction = 'left'
self.manager.transition.duration = 1
self.manager.current = 'screen_two'
class Test2(Widget, Screen):
def __init__(self, **kwargs):
super(Test1, self).__init__(**kwargs)
btn1 = Button(text='page1', font_size="15sp",
btn1.bind(on_press = self.callback)
self.add_widget(btn1)
def callback(self):
print("Button is pressed")
self.manager.transition.direction = 'left'
self.manager.transition.duration = 1
self.manager.current = 'screen_one'
但是每次我运行它都会显示这个错误:
无法创建一致的方法解析 基地小部件、屏幕的订单 (MRO)
我猜是关于父类的顺序;但是,换个地方也没有用。
【问题讨论】:
标签: python python-3.x kivy kivymd