Python 我有一个错误的代码,其中包括基维
我想我导入了错误的模块或其他东西 这是我第一次使用Kivy 当我运行代码时,它会打开窗口,但会立即关闭窗口 在那之后,它给了我这个错误 感谢所有的StackOverflow社区 下面是错误Python 我有一个错误的代码,其中包括基维,python,kivy,Python,Kivy,我想我导入了错误的模块或其他东西 这是我第一次使用Kivy 当我运行代码时,它会打开窗口,但会立即关闭窗口 在那之后,它给了我这个错误 感谢所有的StackOverflow社区 下面是错误 回溯(最近一次呼叫最后一次): 文件“C:/Users/Toshiba/Desktop/python_temelleri/Kivy.py”,第14行,在 DemoApp().run() 文件“C:\Users\Toshiba\Desktop\python\u temelleri\venv\lib\site p
回溯(最近一次呼叫最后一次):
文件“C:/Users/Toshiba/Desktop/python_temelleri/Kivy.py”,第14行,在
DemoApp().run()
文件“C:\Users\Toshiba\Desktop\python\u temelleri\venv\lib\site packages\kivy\app.py”,第837行,正在运行
Window.add\u小部件(self.root)
文件“C:\Users\Toshiba\Desktop\python\u temelleri\venv\lib\site packages\kivy\core\window\uuuuu init\uuuuuuuu.py”,第1297行,在add\u小部件中
(widget,widget.parent)
kivy.uix.widget.WidgetException:无法添加到窗口,它已具有父级
问题在于kivy应用程序的代码:
Traceback (most recent call last):
File "C:/Users/Toshiba/Desktop/python_temelleri/Kivy.py", line 14, in <module>
DemoApp().run()
File "C:\Users\Toshiba\Desktop\python_temelleri\venv\lib\site-packages\kivy\app.py", line 837, in run
Window.add_widget(self.root)
File "C:\Users\Toshiba\Desktop\python_temelleri\venv\lib\site-packages\kivy\core\window\__init__.py", line 1297, in add_widget
(widget, widget.parent)
kivy.uix.widget.WidgetException: Cannot add <kivymd.uix.button.MDFlatButton object at 0x000000296765DF98> to window, it already has a parent <Screen name=''>
其中,self.root
是由build()
方法返回的内容。因此,如果您的build()
方法
Window.add_widget(self.root)
及
然后,kivy应用程序中的上述代码将通过一个错误,因为btn_flat
已经是屏幕的子项。您的build()
方法可能应该是:
return btn_flat
我发现了错误。我只是在返回部分键入btn_flat,但我会键入screen。但是无论如何,如果有人回答了相同的错误,现在你知道答案了。非常感谢。
screen.add_widget(btn_flat)
return btn_flat
def build(self):
screen = Screen()
btn_flat = MDFlatButton(text='Hello World')
screen.add_widget(btn_flat)
return screen