2017-01-12 17 views

答えて

0

これはKivyが自動的に行うことができますが、var1がkivyプロパティの場合にのみ有効です。あなたはそれらについてもっと読むことができますhere

それはまだvar1がkivyプロパティではないことを意味します。あなたは、クラス属性、例えば、それらを設定する必要があります。:

KVで
class MyWidget 
    var1 = NumericProperty() 
    [...] 

、その後:

MyWidget: 
    Button: 
     text: root.var1 

または何でもしたいです。あなたが設定している値がkivyプロパティである限り、それはうまくいくはずです。場合によっては右側の値が複雑なもの(text: "" if root.var is None else getattr("mystring", root.var))のものは簡単にはうまくいかないかもしれませんが、その場合は他のスタックオーバーフローに関する質問があります。

0

コースに直接アクセスできます。 text: var1をする必要はありません。これらはかなり一般的な方法ですが、それ以外にもsetattr()などがあります。そのインスタンスを通じて

<Buttons_Root>: 
    Button: 
     id: mybutton 

→PY:その親を通して

b = Buttons_Root() 
b.ids.mybutton.text = 'something' 

PY→

<MyBoxLayout>: 
    Button: 

box = MyBoxLayout() 
box.children[0].text = 'something' 
関連する問題