>백엔드 개발 >파이썬 튜토리얼 >Kivy 화면 관리자 kivy\properties.pyx KeyError 및 AttributeError: 'super' 객체에 '__getattr__' 속성이 없습니다. '__setattr__'을 의미하셨나요?

Kivy 화면 관리자 kivy\properties.pyx KeyError 및 AttributeError: 'super' 객체에 '__getattr__' 속성이 없습니다. '__setattr__'을 의미하셨나요?

WBOY
WBOY앞으로
2024-02-09 12:39:14536검색

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

질문 내용

kivy를 사용하여 화면 관리자를 구현하려고 하다가 문제가 발생했습니다. 보시다시피 "chat" ID는 main.kv에 정의되어 있으므로 오류가 발생하는 이유를 이해할 수 없습니다. 저는 kivy를 처음 접했고 이전에 화면 관리자를 사용해 본 적이 없습니다.. 도와주세요!

app_cleaned.py

으아악

main.kv

으아악

Register.kv

으아악

여기서 유사한 문제에 대한 다른 질문을 봤지만 안타깝게도 특정 시나리오에 솔루션을 적용할 만큼 kivy에 능숙하지 않습니다.


정답


chat id 是在 mainscreen 类中定义的,但您尝试在 exampleappself.root.ids 中访问它。由于该 id 是在 <mainscreen> 规则中定义的,因此您必须通过 mainscreen 实例访问它。一种方法是仅保存对 mainscreen 实例的引用。在 build() 방법에서 다음을 변경할 수 있습니다.

으아악

받는 사람:

으아악

그런 다음 비정적 exampleapp 方法内的任何位置,您都可以访问 chat ID에서 다음과 같이 하세요.

으아악

위 내용은 Kivy 화면 관리자 kivy\properties.pyx KeyError 및 AttributeError: 'super' 객체에 '__getattr__' 속성이 없습니다. '__setattr__'을 의미하셨나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제