首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python Kivy保持文本更新(刷新)

Python Kivy保持文本更新(刷新)
EN

Stack Overflow用户
提问于 2020-11-13 06:33:24
回答 1查看 48关注 0票数 0

我在Jetson Nano上运行了这个Kivy代码。MLX90614是连接到i2c的温度传感器。一旦运行,它将显示温度,但它不会更新/刷新。怎样才能让它不断地显示实际温度呢?

代码如下:

代码语言:javascript
复制
from kivy.app import App
from kivy.uix.label import Label

import board
import busio as io
import adafruit_mlx90614

i2c = io.I2C(board.SCL, board.SDA, frequency=100000)
mlx = adafruit_mlx90614.MLX90614(i2c)




class MainApp(App):
    def build(self):
        label = Label(text='This is the temperature: ' + str(mlx.object_temperature),
                      size_hint=(.5, .5),
                      pos_hint={'center_x': .5, 'center_y': .5})

        return label

if __name__ == '__main__':
    app = MainApp()
    app.run()

结果如下:

EN

回答 1

Stack Overflow用户

发布于 2020-11-13 07:03:57

如下所示:

代码语言:javascript
复制
from kivy.clock import Clock

class MainApp(App):
    def build(self):
        self.label = Label(text='This is the temperature: ' + str(mlx.object_temperature),
                          size_hint=(.5, .5),
                          pos_hint={'center_x': .5, 'center_y': .5})
        Clock.schedule_interval(self.update_label, 0)

        return self.label
    
    def update_label(self, dt):
        self.label.text = "This is the temperature: {}".format(mlx.object_temperature)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64812818

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档