Я пытался показать график на втором экране после того, как нажал кнопку на первом экране. это код, который я попробовал. импортировать kivy из kivy.app import app из kivy.uix.label import Label из kivy.uix.gridlayout import GridLayout из kivy.uix.textinput import TextInput из kivy.uix.button import Button из kivy.uix.boxlayout импортировать BoxLayout из kivy .properties import ObjectProperty из kivy.lang import Builder из kivy.uix.screenmanager import ScreenManager, Экран из kivy.garden.matplotlib.backend_kivyagg import FigureCanvasKivyAgg из kivy.uix.widget импорт виджета из pandas импорт read_exp
plt.plot([1, 23, 2, 4])
plt.ylabel('some numbers')
class MainWindow(Screen):
def btn(self):
print("name: ",self.name2.text)
self.ids.destination.add_widget(FigureCanvasKivyAgg(plt.gcf()))
class SecondWindow(Screen):
pass
class WindowManager(ScreenManager):
pass
kv = Builder.load_file("my.kv")
class MyMainApp(App):
def build(self):
return kv
if __name__=="__main__":
MyMainApp().run()
#:kivy 1.9.1
WindowManager:
MainWindow:
SecondWindow:
<MainWindow>:
name: "main"
name2: name2
GridLayout:
cols:1
size: root.width, root.height
GridLayout:
cols:2
Label:
text:"name: "
TextInput:
id: name
multinline:False
Label:
text:"name2: "
TextInput:
id: name2
multinline:False
Button:
text:"Submit"
on_release:
root.btn()
app.root.current = "second"
root.manager.transition.direction = "left"
<SecondWindow>:
name: "second"
GridLayout:
cols:1
BoxLayout:
id: destination
Button:
text: "Go Back"
on_release:
app.root.current = "main"
root.manager.transition.direction = "right"
но я получил ошибку говорит 'super' object has no attribute '__getattr__'
и я не знаю, что это значит. пожалуйста, помогите мне.