我的意图是在我们的窗口右侧有一个布局,在右侧有一个 ScreenManager。两者都在不同的布局中,但在同一个主应用程序中。我似乎无法在屏幕管理器的布局更改屏幕上设置按钮。
这是我的 kv 代码:
<MainWindow>:
rows: 1
columns: 2
LeftBox:
RightBox:
<LeftBox>:
Button:
text: "Screen 1"
on_press:
app.root.ids.scr.switch_to(screen=Screen1)
Button:
text: "Screen 2"
<RightBox>:
ScrMng:
<ScrMng>:
id: scr
Screen1:
Button:
text: "Hello"
Screen2:
Button:
text: "World"
这是我的python代码:
import 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.uix.boxlayout import BoxLayout
from kivy.uix.widget import Widget
from kivy.uix.textinput import TextInput
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.properties import ObjectProperty
class MainWindow(GridLayout):
pass
class ScrMng(ScreenManager):
pass
class LeftBox(BoxLayout):
pass
class RightBox(BoxLayout):
pass
class Screen1(Screen):
pass
class Screen2(Screen):
pass
class newtestApp(App):
def build(self):
return MainWindow()
k = newtestApp()
k.run()
我得到的错误是
AttributeError: 'super' 对象没有属性 ' __getattr__'
相关分类