ホームページ > バックエンド開発 > Python チュートリアル > Kivy スクリーンマネージャー kivy\properties.pyx KeyError および AttributeError: 'super' オブジェクトには属性 '__getattr__' がありません。 「__setattr__」という意味ですか?

Kivy スクリーンマネージャー kivy\properties.pyx KeyError および AttributeError: 'super' オブジェクトには属性 '__getattr__' がありません。 「__setattr__」という意味ですか?

WBOY
リリース: 2024-02-09 12:39:14
転載
549 人が閲覧しました

Kivy 屏幕管理器 kivy\properties.pyx KeyError 和 AttributeError:“super”对象没有属性“__getattr__”。您的意思是:“__setattr__”吗?

質問内容

kivyを使ってスクリーンマネージャーを実装しようとして問題が発生しました。ご覧のとおり、「チャット」ID は main.kv で定義されているため、なぜエラーが発生するのか理解できません。私はkivyを初めて使用し、これまでスクリーンマネージャーを使用したことがありません。助けてください。

app_cleaned.py

リーリー

メイン.kv

リーリー

登録.kv

リーリー

同様の問題に関する他の質問をここで見ましたが、残念ながら、私は特定のシナリオに解決策を適用できるほど kivy に習熟していません。


正解


あなたの chat ID は mainscreen クラスで定義されていますが、それにアクセスしようとしています#exampleappself.root.ids。 ID は ルールで定義されているため、mainscreen インスタンスを通じてアクセスする必要があります。 1 つの方法は、mainscreen インスタンスへの参照を保存することです。 build() メソッドでは、以下を変更できます: リーリー ###に:### リーリー

その後、非静的

exampleapp

メソッド内のどこからでも、次のように

chat ID にアクセスできます。 リーリー

以上がKivy スクリーンマネージャー kivyproperties.pyx KeyError および AttributeError: 'super' オブジェクトには属性 '__getattr__' がありません。 「__setattr__」という意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:stackoverflow.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート