2017-10-20 130 views
1

in kivy我想將小部件的屬性綁定到子部件的屬性。因此,當根部件屬性發生更改時,更改也會傳播到子屬性。將屬性綁定到kivy中的另一個屬性

我嘗試了這種方式:

self._Child._MyProperty = self._MyProperty 

它的工作原理...有時。但有時它不起作用。我無法確定它何時有效,或者爲什麼以及在哪些條件下不起作用。

在所有情況下在根小部件我有一個結合的方法,以及:

這種方法被稱爲在所有情況下,但有時的變化不會傳播到子屬性。

,如果它感覺很自然這甚至不工作:

self.bind(_MyProperty = self._Child._MyProperty) 

但kivy語言,我可以這樣做:

<RootWidget> 
    <ChildWidget> 
     _MyProperty: self.parent._MyProperty 

但我想這樣做的蟒蛇不在KV-語言。

有沒有人有一個想法,如何正確地做到這一點?

回答

0

爲了一個屬性綁定到另一個你應該使用setter

self.bind(_MyProperty=self._Child.setter('_MyProperty')) 
+0

謝謝!這工作! – CountVonCount

相關問題