只是开始了kivy框架,在kivy painting app tutorial中有以下代码行:
touch.ud['line'] = Line(points=(touch.x, touch.y))
有人可以请问touch.ud
的确切含义吗?
使用print(help(touch.ud))
返回
关于kivy.input.motionevent模块中的EnhancedDictionary的帮助:
类EnhancedDictionary(builtins.dict) ...
将所有内容放在一起,仍然不确定发生了什么。有人可以特别说明“ ud
”部分。谢谢!
答案 0 :(得分:1)
让我们遍历触摸部分是提供事件on_touch_XXX
且为MotionEvent
的参数,因此,如果要查找信息,则应转到文档的该部分,检查{{3 }},您将获得以下信息:
用户数据字典。使用此词典可保存您自己的数据。
然后,说明告诉我们,如果您要共享要在on_touch_xxx其他事件中使用的某些信息,则将其保存在该词典中是正确的:
def on_touch_XXX(self, touch):
touch.ud["some_info"] = some_value
def on_touch_YYY(self, touch):
value = touch.ud["some_info"]
print(value)
在特定示例的情况下,将保存在on_touch_down
中创建的直线实例,因为on_touch_move
需要添加更多点。