Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.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 kivy自定义小部件绑定错误_Python_Python 3.x_Widget_Kivy - Fatal编程技术网

Python kivy自定义小部件绑定错误

Python kivy自定义小部件绑定错误,python,python-3.x,widget,kivy,Python,Python 3.x,Widget,Kivy,我正在尝试制作一个小俄罗斯方块游戏,用于与kivy一起学习python。我正在尝试创建一个大小为20,20的自定义小部件。当我将其添加到float布局并运行以下代码时,我收到以下错误: 错误: File "D:\OS Files\workspace\Tetris\holder.py", line 10, in __init__ self.add_widget(c) File "C:\Kivy180\kivy\kivy\uix\floatlayout.py", line 115, in add_w

我正在尝试制作一个小俄罗斯方块游戏,用于与kivy一起学习python。我正在尝试创建一个大小为20,20的自定义小部件。当我将其添加到float布局并运行以下代码时,我收到以下错误:

错误:

File "D:\OS Files\workspace\Tetris\holder.py", line 10, in __init__ self.add_widget(c)
File "C:\Kivy180\kivy\kivy\uix\floatlayout.py", line 115, in add_widget pos_hint=self._trigger_layout)
TypeError: descriptor 'bind' of 'kivy._event.EventDispatcher' object needs an argument
代码: holder.py文件:

from items import Cell

class Holder(FloatLayout):
    def __init__(self, **kwargs):
        super(Holder,self).__init__(**kwargs)
        self.size=(300,300)
        c=Cell
        #c.pos= (20,20)
        self.add_widget(c)
        #self.add_widget(c)
items.py文件:

from kivy.uix.widget import Widget
from kivy.graphics import *

class Cell(Widget):
    def __init__(self, **kwargs):
        super(Cell,self).__init__(**kwargs)
        with self.canvas:
            Color(1, 0, 0)
            Rectangle(pos=(0, 0), size=(50, 50))

        self.height=50
        self.width=50
main.py文件:

from kivy.app import App
from holder import Holder

class start(App):
    def build(self):
        return Holder()

if __name__ == '__main__':
    start().run()
你能解释一下我哪里出了错吗?我被困在起点上了。关于这个错误,我还没有编写任何事件,它只是一个小部件类。你能解释一下我理解kivy的错误之处吗

c=Cell
我打赌您希望
c
成为
Cell
类的实例。如果您想这样做,您需要:

c=Cell()

c=Cell
不应该有括号、参数和其他东西吗?是的,谢谢你的帮助。如果你能保留它作为答案,我会把它标记为正确的。但对于初学者来说,这些都是常见的错误,我相信,我来自VB.net和Visual Studio,我使用“c.pos=(200200)”,但是,小部件仅添加在角落,请您再次纠正我。抱歉,我实际上不知道足够的kivy来诊断该问题:-(好的,你回答了我的问题,谢谢。