亲爱的
我试着用Kivy做一个非常简单的程序,它会在屏幕上随机移动一个标签(就像旧的屏幕保护程序一样)。你知道吗
想用时钟和随机键吗
我做错什么了?你知道吗
厚度
代码
from kivy.base import runTouchApp
from kivy.lang import Builder
from kivy.uix.label import Label
from kivy.clock import Clock
from kivy.properties import ListProperty
from kivy.core.window import Window
from random import random
Builder.load_string('''
<TransLabel>:
Label :
text: "test"
pos: self.pos
size: self.size
''')
class TransLabel(Label):
velocity = ListProperty([10,15])
def __init__(self, **kwargs):
super(TransLabel,self).__init__(**kwargs)
Clock.schedule_interval(self.update, 1/60.)
def update(self,*args):
self.x += self.velocity[0]
self.y += self.velocity[1]
if self.x <0 or (self.x + self.width) > Window.width:
self.velocity[0] *= -1
if self.y <0 or (self.y + self.height) > Window.height:
self.velocity[1] *= -1
runTouchApp(TransLabel())
包含文本的标签不应具有根的大小,因为在执行
update()
方法时,文本将振荡,因为计算if的语句将始终为true。你知道吗您还必须比较文本相对于窗口的位置,而不是根与窗口的位置,因为它们的大小相同。你知道吗
相关问题 更多 >
编程相关推荐