我运行了代码,但结果出乎我的意料。它显示小部件两次,实际上甚至更多次。但我不知道为什么。这是我的代码:
.py
from kivy.app import App
from kivy.lang import Builder
from kivy.uix.boxlayout import BoxLayout
class MyWidget(BoxLayout):
pass
Builder.load_file('menu.kv')
class menu(App):
def build(self):
return MyWidget()
if __name__ == '__main__':
menu().run()
.ky
#:kivy 2.0.0
<MyWidget>:
orientation: "vertical"
Button:
size_hint: 1, .25
text: "1"
Button:
size_hint: 1, .25
text: "2"
Button:
size_hint: 1, .25
text: "3"
Button:
size_hint: 1, .25
text: "4"
其显示如下:重复
非常感谢
我认为问题在于您同时使用了Builder.load_file('menu.kv')
和return MyWidget()
。您可以省略提到的第一行,也可以删除build(self)
方法。
在我尝试之后,.py和.kv文件的名称导致了问题。
所以我修改了文件名(ori名称:menu.py,menu.kv(