ボタンをクリックすると画面を切り替えるメインメニューを作ろうとしていますが、ボタンからマネージャーを参照する方法がわかりません。
メインメニューページ(kvファイル)のセットアップがあります:
<MainMenu>: #AnchorLayout
BoxLayout:
Button:
text: "button 1"
Button:
text: "change screen"
on_release: root.manager.current = "OtherPage"
<MainWidget>:
screen_manger: screen_manager
ScreenManger:
id: screen_manger
Screen:
name: "MainMenu"
MainMenu
Screen:
name: "OtherPage"
OtherPage #this is defined in the kv file, just lazy to type it.
Button をクリックすると、次のChange Screen
ようになります。
AttributeError: 'MainMenu' object has no attribute 'manager'
正直なところ、これは私を驚かせません。BoxLayout
すべてのレイアウトを Python コードで記述し、またはウィジェットにスクリーン マネージャーへの参照を追加することで、これを回避できるとMainMenu
思いますが、kv ファイルでこれを行う方法がわかりません。