Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 我有一个错误的代码,其中包括基维_Python_Kivy - Fatal编程技术网

Python 我有一个错误的代码,其中包括基维

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

我想我导入了错误的模块或其他东西

这是我第一次使用Kivy

当我运行代码时,它会打开窗口,但会立即关闭窗口

在那之后,它给了我这个错误

感谢所有的StackOverflow社区

下面是错误

回溯(最近一次呼叫最后一次):
文件“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