我将尝试制作一个小的俄罗斯方块游戏来学习使用kivy的python技术。我正在尝试创建一个大小为20x20的自定义小部件。当我将其添加到浮动布局中并运行下面的代码时,会出现以下错误:
错误信息:
错误信息:
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
主要.py文件:
from kivy.app import App
from holder import Holder
class start(App):
def build(self):
return Holder()
if __name__ == '__main__':
start().run()
请问您能否解释一下我哪里出错了,我在起点就卡住了。关于错误,我也没有编写任何事件,只是一个小部件类。请问您能否解释一下我在理解kivy方面犯了哪些错误。