我是Python / Kivy初学者,我想在标签“ outputWindow”中得到a和b值的总和,有人可以帮我吗?谢谢!
class Example(App):
def build(self):
layout = BoxLayout(orientation='vertical')
self.otputWindow = Label(text="...")
self.aClick = Button(text="Calc >>")
self.aClick.bind(on_press=self.first_number)
self.aClick.bind(on_press=self.second_number)
layout.add_widget(self.otputWindow)
layout.add_widget(self.aClick)
return layout
def first_number(self, *args):
a = 5
def second_number(self, *args):
b = 10
if __name__ == '__main__':
Example().run()
答案 0 :(得分:1)
我自己还没有使用过Kivy,我对python位有一个评论:
您在方法a
和b
中使用的变量first_number()
和second_number()
仅在这些方法的范围内定义。您可以分配self.a = 5
,也可以让方法返回数字。仅编写a = 5
便无法在您的方法之外的任何地方引用a
。
这是您的代码的一个建议(尽管它可能是不完整的,因为我不知道您要做什么)
class Example(App):
def build(self):
layout = BoxLayout(orientation='vertical')
self.first_number()
self.second_number()
self.otputWindow = Label(text=str(self.a + self.b))
self.aClick = Button(text="Calc >>")
self.aClick.bind(on_press=self.first_number)
self.aClick.bind(on_press=self.second_number)
layout.add_widget(self.otputWindow)
layout.add_widget(self.aClick)
return layout
def first_number(self, *args):
self.a = 5
def second_number(self, *args):
self.b = 10
if __name__ == '__main__':
Example().run()