Kivy App:TypeError:object.\uuuu init\uuuuu()只接受一个参数(要初始化的实例)

2024-09-28 03:22:38 发布

您现在位置:Python中文网/ 问答频道 /正文

这个练习应用程序的代码是这样的,我将它与示例视频的代码进行了比较,结果完全相同。 可能是什么问题

import kivy
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.gridlayout import GridLayout
from kivy.uix.textinput import TextInput


class MyGrid(GridLayout):
    def __init__(self, **kwargs):
        super(MyGrid, self).__init__(**kwargs)
        self.cols = 2 
        self.add_widget(Label(text="Name: "))
        self.name = TextInput(multilane=False)
        self.add_widget(self.name)
        


class MyApp(App):
    def build(self):
        return MyGrid()

if __name__ == "__main__":
    MyApp().run()

但这让我犯了一个错误:

TypeError: object.__init__() takes exactly one argument (the instance to initialize)

提及:

File "C:/Users/JLHI6/AppData/Local/Programs/Python/Python38-32/Scripts/Prueba Kivy.py", line 23, in <module>
     MyApp().run()
File "C:/Users/JLHI6/AppData/Local/Programs/Python/Python38-32/Scripts/Prueba Kivy.py", line 20, in build
     return MyGrid()
   File "C:/Users/JLHI6/AppData/Local/Programs/Python/Python38-32/Scripts/Prueba Kivy.py", line 13, in __init__

Tags: namefromimportselfinitlocalusersappdata
1条回答
网友
1楼 · 发布于 2024-09-28 03:22:38

此错误表示您传递了一个类不期望的参数。参数在super(..., self)调用中不断向上传递到超类,最终object类引发此异常

在这种情况下,不存在的参数是multilane=False。也许你的意思是multiline=False

相关问题 更多 >

    热门问题