【发布时间】:2017-11-24 08:46:32
【问题描述】:
kivy 新手,OOP。
我正在尝试使用从温度传感器中提取的数据更新 kivy 中的标签。提取传感器数据的代码在 labeltempmod 中。我创建了一个每秒调用一次的函数 getTheTemp()。在函数中,我尝试通过 Label(text=(format(thetemp)), font_size=80) 分配标签的文本。程序忽略了这一点。我在这里做错了什么?
#This is a test to see if I can write the temp to label
import labeltempmod
import kivy
from kivy.app import App
from kivy.clock import Clock
from kivy.uix.label import Label
from kivy.uix.floatlayout import FloatLayout
from kivy.uix.textinput import TextInput
from kivy.uix.boxlayout import BoxLayout
def getTheTemp(dt):
thetemp = labeltempmod.readtemp()
Label(text=(format(thetemp)), font_size=80)
print thetemp
class LabelWidget(BoxLayout):
pass
class labeltestApp(App):
def build(self):
# call get_temp 0.5 seconds
Clock.schedule_interval(getTheTemp, 1)
return LabelWidget()
if __name__ == "__main__":
labeltestApp().run()
这里是kivy语言文件:
<LabelWidget>:
orientation: 'vertical'
TextInput:
id: my_textinput
font_size: 80
size_hint_y: None
height: 100
text: 'default'
FloatLayout:
Label:
id: TempLabel
font_size: 150
text: 'Temp Test'
谢谢。
【问题讨论】: