刚开始学习Kivy。我下载的Kivy软件包有几个例子供我开始。但是,我很难理解它,因为大多数都是在kvlang(file.kv)的帮助下编写的。我确实经历了Kv tutorial,我仍然不明白。
我对Python有一些不错的经验。但我无法将Kv示例与Python相关联。 下面是从Kivy教程中的Pong Game中提取的代码的一部分。
<PongGame>:
canvas:
Rectangle:
pos: self.center_x - 5, 0
size: 10, self.height
Label:
font_size: 70
center_x: root.width / 4
top: root.top - 50
text: "0"
有人可以帮助我以Python形式翻译上面的kv代码吗?
顺便问一下Kivy语言还有其他任何教程吗?因为从长远来看,学习Kvlang仍然是更好的方法。
提前致谢。
答案 0 :(得分:1)
Kivy语言更容易,但无论如何我希望这会对你有所帮助。诀窍是做所有的进口。特别重要的是Window
导入,因为您无法访问Kivy语言代码之外的root
。
from kivy.app import App
from kivy.core.window import Window
from kivy.uix.widget import Widget
from kivy.uix.label import Label
from kivy.graphics import Rectangle
class PongGame(Widget):
def __init__(self, **kwargs):
super(PongGame, self).__init__(**kwargs)
label = Label(text = "0")
label.font_size = 70
label.center_x = Window.width / 4
label.top = Window.height - 50
self.add_widget(label)
with self.canvas:
Rectangle(pos = (Window.width/2 - 5, 0), size = (10,Window.height))
class PongApp(App):
def build(self):
return PongGame()
if __name__ == '__main__':
PongApp().run()