当我绑定到AliasProperty时会发生什么?

阿维夫·科恩(Aviv Cohn)

这是我的简化代码:

class Player(Widget):
    _health = NumericProperty(100)

    def _get_health(self):
        return self._health

    health = AliasProperty(_get_health, bind=['_health'])

我这样做是为了使health“只读”。

奇怪的是,当我移除时,它不起作用bind=['_health']

所以我的问题是:bind=['_health']实际上是做什么的?我了解AliasProperty允许我定义在访问属性时运行的getter和可选setter(类似于Python的@property)。

那么bind=['_health']在这种情况下_health该怎么办?为什么排除该属性后该属性不起作用(不反映底层的状态)?

seaMonkeez

bind参数告诉属性引擎哪些其他属性需要监视更改,因为它们与所AliasProperty考虑的内容相关

让我们以文档中的(简化)示例为例:

def get_right(self):
    return self.x + self.width
right = AliasProperty(get_right, bind=['x', 'width'])

在这里,right依赖于其他两个属性。如果只写了bind=['x'],则仅更改为x会导致触发的更改事件right,而更改width则将被忽略(但是,如果width更改x发生后,将触发具有预期值的事件,并且如果该值是手动检索的,也将是正确的)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

当我离开INT_MAX以外时会发生什么情况?

来自分类Dev

当我在Bash脚本中对函数使用`&`时会发生什么?

来自分类Dev

MySql-当我用“ and”更新时会发生什么

来自分类Dev

当我们运行julia-lang脚本时会发生什么?

来自分类Dev

当我放弃对iOS 6的支持时会发生什么?

来自分类Dev

当我释放Delphi中可能不存在的内存时会发生什么?

来自分类Dev

当我包装两次I / O流时会发生什么?

来自分类Dev

当我不带点运行grep -lr“搜索词”时会发生什么?

来自分类Dev

当我在C ++中对未初始化的指针调用“删除”时会发生什么?

来自分类Dev

就system_read中断,汇编而言,当我按Enter键时会发生什么?

来自分类Dev

当我在代码中留下一些断点时会发生什么?

来自分类Dev

当我在异步回调中设置对象时会发生什么?

来自分类Dev

将变量绑定到某些数据时会发生什么?

来自分类Dev

当我使用多个模拟时间时会发生什么?

来自分类Dev

当我多次调用requestAnimationFrame时会发生什么

来自分类Dev

当我调用“ BufferStrategy.show()”时会发生什么?

来自分类Dev

当我们在Android Studio中添加DEPENDENCY时会发生什么

来自分类Dev

当我用尽内存以维护mapWithState的状态时会发生什么?

来自分类Dev

当我从RAM运行持久性存储实时USB时会发生什么情况?

来自分类Dev

当我将用EQU定义的常量复制到NASM Assembly中的EAX时会发生什么?

来自分类Dev

当我放弃对iOS 6的支持时会发生什么?

来自分类Dev

当我截断正在使用的文件时会发生什么?

来自分类Dev

当我将%esp移至%ebp时会发生什么?

来自分类Dev

当我不输入期望的命令时会发生什么?

来自分类Dev

当我忘记登录TTY时会发生什么?

来自分类Dev

当我使用多个模拟时间时会发生什么?

来自分类Dev

当我调用“ BufferStrategy.show()”时会发生什么?

来自分类Dev

当我取消订阅 Observable 链时会发生什么?

来自分类Dev

当我同时使用主机卷(绑定安装)和命名卷(一种 docker 管理的卷)时会发生什么?

Related 相关文章

  1. 1

    当我离开INT_MAX以外时会发生什么情况?

  2. 2

    当我在Bash脚本中对函数使用`&`时会发生什么?

  3. 3

    MySql-当我用“ and”更新时会发生什么

  4. 4

    当我们运行julia-lang脚本时会发生什么?

  5. 5

    当我放弃对iOS 6的支持时会发生什么?

  6. 6

    当我释放Delphi中可能不存在的内存时会发生什么?

  7. 7

    当我包装两次I / O流时会发生什么?

  8. 8

    当我不带点运行grep -lr“搜索词”时会发生什么?

  9. 9

    当我在C ++中对未初始化的指针调用“删除”时会发生什么?

  10. 10

    就system_read中断,汇编而言,当我按Enter键时会发生什么?

  11. 11

    当我在代码中留下一些断点时会发生什么?

  12. 12

    当我在异步回调中设置对象时会发生什么?

  13. 13

    将变量绑定到某些数据时会发生什么?

  14. 14

    当我使用多个模拟时间时会发生什么?

  15. 15

    当我多次调用requestAnimationFrame时会发生什么

  16. 16

    当我调用“ BufferStrategy.show()”时会发生什么?

  17. 17

    当我们在Android Studio中添加DEPENDENCY时会发生什么

  18. 18

    当我用尽内存以维护mapWithState的状态时会发生什么?

  19. 19

    当我从RAM运行持久性存储实时USB时会发生什么情况?

  20. 20

    当我将用EQU定义的常量复制到NASM Assembly中的EAX时会发生什么?

  21. 21

    当我放弃对iOS 6的支持时会发生什么?

  22. 22

    当我截断正在使用的文件时会发生什么?

  23. 23

    当我将%esp移至%ebp时会发生什么?

  24. 24

    当我不输入期望的命令时会发生什么?

  25. 25

    当我忘记登录TTY时会发生什么?

  26. 26

    当我使用多个模拟时间时会发生什么?

  27. 27

    当我调用“ BufferStrategy.show()”时会发生什么?

  28. 28

    当我取消订阅 Observable 链时会发生什么?

  29. 29

    当我同时使用主机卷(绑定安装)和命名卷(一种 docker 管理的卷)时会发生什么?

热门标签

归档