0

我将从一个我正在尝试做的简单示例开始:

说,我有两个 IntSlider 小部件。我想让一个代表 x,另一个代表 x^2(单向链接)。如果我要使用第二个滑块(双向链接),也许我什至希望第一个滑块显示 sqrt(x^2)。

这会非常天真地翻译成这样的:

l1 = traitlets.link((widg1, 'value'),(widg2, 5* 'value'))

当然不是,因为第二个元组参数应该是一个字符串,所以我实际上是在传递'valuevaluevaluevaluevalue'。

无论如何,这是否可能,如果是,是否已经实施?

4

1 回答 1

0

link只传递相同的值。如果要转换值,则需要回调:

def widg1_changed(name, new_value):
    widg2.value = 5 * new_value

widg1.on_trait_change(widg1_changed, 'value')

我目前不知道双向执行此操作的好方法。

于 2015-07-27T18:57:50.970 回答