作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个包含常量的文件,如下所示:
from enum import Enum
class Ear(Enum):
LEFT = 0
RIGHT = 1
然后我将其导入到 kv 文件中,如下所示:
#: import Ear vocelab.ark_const
最后用它来设置一个名为“ear”的 ObjectProperty:
Audiogram:
id: audiogram
ear: Ear.LEFT
然后我收到此错误(回溯非常长,这只是其中的一部分):
kivy.lang.builder.BuilderException: Parser: File "C:\Users\Laci\Python\Projects\VoceLab\vocelab\vocelab.kv", line 224:
...
222: Audiogram:
223: id: audiogram
>> 224: ear: Ear.LEFT
225: TabbedPanelItem:
226: id: tp_devices
...
BuilderException: Parser: File "C:\Users\Laci\Python\Projects\VoceLab\vocelab\vocelab.kv", line 224:
...
222: Audiogram:
223: id: audiogram
>> 224: ear: Ear.LEFT
225: TabbedPanelItem:
226: id: tp_devices
...
AttributeError: 'module' object has no attribute 'LEFT'
我认为这可能是一个错误,或者至少是错误消息(如果错误)。它说“AttributeError:'module'对象没有属性'LEFT'”,但“Ear”不是模块。我对此不确定,但也许 kivy 试图获取 ark_consts 模块的“LEFT”属性,而不是枚举?
最佳答案
您导入的是模块,而不是类
试试这个:
#: import Ear vocelab.ark_const.Ear
其中 import
的下一个是您为导入内容指定的名称,您导入的是最后一个
关于python - kivy 语言不处理枚举?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47247187/
我是一名优秀的程序员,十分优秀!