0

从指令组调用get_group()会产生比我想要的更多的结果。

我有以下代码:

for widget in self.selected:
    dx, dy = (
        widget.pos[0] - self.pos[0],
        widget.pos[1] - self.pos[1]
    )
    self.shadows.add(Rectangle(size=widget.size, pos=widget.pos, group='my_shadows'))

self.canvas.add(self.shadows)

print self.shadows.get_group('my_shadows')

这反过来产生以下结果:

<kivy.graphics.context_instructions.BindTexture object at 0x7ff992377050>
<kivy.graphics.vertex_instructions.Rectangle object at 0x7ff99493e638>
<kivy.graphics.context_instructions.BindTexture object at 0x7ff9923770e8>
<kivy.graphics.vertex_instructions.Rectangle object at 0x7ff99493e6e0>

什么是 BindTextures,为什么它们会通过 BindTextures 返回get_group()?我只期望矩形。如果我打算操纵我的矩形,我是否需要对我的 BindTextures 做同样的事情?

4

1 回答 1

0

也许您已经注意到,Rectangle您可以设置 Widget 的背景图像。这就是为什么BindTexture它为source可用作背景的图像的路径提供参数。

如果您不打算将这些矩形用作背景图像(来自文件,而不是使用Color+绘制Rectangle),我认为忽略纹理是安全的。

于 2016-09-13T22:37:24.013 回答