自作Widgetが配置されたAppインスタンスを取得したい


この記事にあるように

[Kivyのrootについて](https://qiita.com/Agipy/items/6be3651b1200c1e3c677)

KV言語でappと書くことではAppインスタンスを参照できますが、KV言語ではなくPythonで書いたWidgetからAppのインスタンスを得るにはどうしたらいいのでしょうか？

Widgetごとにファイルを分けて、アプリケーションを作っていますが、設定値などウィジェットツリー全体でグローバル変数のように値を読み書きしたいです。  
Appインスタンスにメンバとして設ければよいかと思ったものの、Appの参照方法で躓いてしまいました。




別な調べ物をしていた時に、この質問の解決策を見つけました。

[How to exit a Kivy application using a
button](https://stackoverflow.com/questions/32425831/how-to-exit-a-kivy-
application-using-a-button)

[code]

    from kivy.app import App
    App.get_running_app()
    
[/code]

とすることで、Kivy言語内でappとしたものと同じオブジェクトが取得できるようです。



[code]

    Builder.load_string("""
    <hoge>:
        app: app
    """)
    
    class hoge(Widget):
        app = ObjectProperty()
    
[/code]

appプロパティを自作して、Kivy言語でセットすることでやりたいことはひとまず解決しました。

