2 回答

TA貢獻1835條經(jīng)驗 獲得超7個贊
我發(fā)現(xiàn)您的代碼有兩個問題。首先,在您的kv文件中,Button操作不正確:
Button:
text: "Sensor 01"
on_release:
root.Grafico()
如果Button打算切換到另一個屏幕,則應該是:
Button:
text: "Sensor 01"
on_release:
root.manager.current='grafico'
其次,在您的Grafico班級中,您有一個build()從未被調(diào)用過的方法。如果您將其更改為:
class Grafico(Screen):
def build(self):
box = BoxLayout()
box.add_widget(FigureCanvasKivyAgg(plt.gcf()))
return box
到:
class Grafico(Screen):
def on_enter(self, *args):
box = BoxLayout()
box.add_widget(FigureCanvasKivyAgg(plt.gcf()))
self.add_widget(box)
我想你會得到想要的結(jié)果。關鍵是on_enter()在Grafico Screen顯示時調(diào)用該方法。該方法是您的代碼,但self.add_widget(box)添加了一個以將box加到屏幕上。有關更多信息,請參閱屏幕文檔。
添加回答
舉報