所以基本上我有一个kivy项目,其中有一个我在许多类中都使用过的布局。如此,我已经自定义了并将其放置在单独的文件中,因此我可以从不同的部分引用它我的代码。
摘要:
from kivy.uix.boxlayout import BoxLayout
from kivy.lang import Builder
Builder.load_string('''
<CustLayout>:
#code here
''')
class CustLayout(BoxLayout):
t_length = NumericProperty(0)
my_len = 0
print(my_len)
def __init__(self, **kwargs):
super(Silvertable,self).__init__(**kwargs)
self.bind(t_length=self.on_t_length)
#This statement is executed after all other prints
print(self.t_length)
def on_t_length(self,instance,length):
#I'd like to get kv file value before the next line
self.my_len = length
print(my_len)
我的kiv文件:
#:import Silvertable silvertables.Silvertable
#chunk of code
BoxLayout:
Silvertable:
t_length: 5
在这里,我确实得到了值,但不幸的是为时已晚。也就是说,我在程序完成后才得到了值。my_len
不会改变,它仍然是0