【发布时间】:2018-09-21 13:38:39
【问题描述】:
我正在尝试将数字时钟添加到我的 Kivy 程序中,它似乎遇到了问题。
这是 .py:
import kivy
kivy.require('1.10.0')
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager, Screen, FadeTransition
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.image import Image
from kivy.uix.floatlayout import FloatLayout
from kivy.uix.stacklayout import StackLayout
from kivy.clock import Clock
from kivy.properties import ObjectProperty
from kivy.properties import StringProperty
import time
class IntroScreen(Screen):
pass
class ContScreen(Screen):
pass
class ScreenManagement(ScreenManager):
pass
backbone = Builder.load_file("main.kv")
class Status(FloatLayout):
_change = StringProperty()
_tnd = ObjectProperty(None)
def update(self, *args):
self.time = time.asctime()
self._change = str(self.time)
self._tnd.text = str(self.time)
print (self._change)
class XGApp(App):
time = StringProperty()
def update(self, *args):
self.time = str(time.asctime()) # + 'time'?
def build (self):
Clock.schedule_interval(self.update, 1)
return backbone
xApp = XGApp()
if __name__ == "__main__":
xApp.run()
和.kv
<ContScreen>:
FloatLayout
size_hint: .1,.1
canvas.before:
Color:
rgba: 0,0,0,1
Rectangle:
pos: self.pos
size: self.size
Label:
text: app.time
ContScreen 是我要显示时钟的屏幕标题,它由单独的 Builder (main.kv) 提供。
任何帮助将不胜感激!已经在这个时钟上挣扎了几个小时了。据我所知,问题似乎在 .kv 方面。
奖励:如果您想加倍努力,我还想添加一个计时器,该计时器可以在按下 .kv 上的按钮时倒计时 x 数量。 x 数量会因您按下的按钮而异。
【问题讨论】:
标签: python timer kivy clock kivy-language