【发布时间】:2020-04-08 15:54:56
【问题描述】:
您好,我对 python 和 kivy 比较陌生,我一直在环顾四周,但找不到答案,我正在尝试创建一个集线器,可以在其中显示来自我的 rasberry-pi 的实时数据。我使用标签制作了一个时钟小部件,它会更新时间,但是当我尝试添加 CPU 使用率时,只显示一个标签。我认为这些小部件可能会相互覆盖,但我使用了 size_hint 并没有帮助。当我运行下面的代码时,只有 timex 会显示并且只有当我删除 Clock.schedule_interval(display32.timex, (1)) strong> 将显示 *updatex *。
非常感谢您的帮助
from kivy.app import App
from kivy.uix.label import Label
from kivy.clock import Clock
from kivy.uix.floatlayout import FloatLayout
import psutil
from kivy.lang import Builder
import time
class Display(Label, FloatLayout):
def __init__(self):
super(Display, self).__init__()
def updatex(self, *args):
self.cpu2 = psutil.cpu_percent()
self.text=str(self.cpu2)
self.size_hint=(.5, .25)
self.pos=(500, 500)
self.texture_size=(0.1,0.1)
def timex(self, *args):
self.time2 = time.asctime()
self.text = str(self.time2)
self.size_hint = (.5, .25)
self.pos = (30, 500)
self.size_hint=(0.1,0.1)
class TimeApp(App):
def build(self):
display32 = Display()
Clock.schedule_interval(display32.updatex, (1))
Clock.schedule_interval(display32.timex, (1))
return display32
if __name__ == "__main__":
TimeApp().run()
【问题讨论】:
标签: python label kivy clock displayobject