Kivy:touch.ud是什么意思

时间:2018-08-14 12:34:29

标签: python kivy

只是开始了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”部分。谢谢!

1 个答案:

答案 0 :(得分:1)

让我们遍历触摸部分是提供事件on_touch_XXX且为MotionEvent的参数,因此,如果要查找信息,则应转到文档的该部分,检查{{3 }},您将获得以下信息:

  

docs

     

用户数据字典。使用此词典可保存您自己的数据。

然后,说明告诉我们,如果您要共享要在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需要添加更多点。