改变散点的比例会影响其工作逻辑 - Kivy

changing scatter' scale affect its working logic - Kivy

我正在尝试更改散点图的大小,以便它可以与我将散点图放入的网格元素大小相同。

为此,我发现更改散点图大小的方法是缩放,所以这里是我所做的:

    gridscreen = GridLayout(rows = x-2)
        for y in self.listim:

            scatt = Scatter()
            scatt.scale = 2.5

            image = Image(source = y)
            scatt.add_widget(image)

            gridscreen.add_widget(scatt)

结果并不像我预期的那样安静,因为创建的每个 Scatter 的大小都很好,但是 Scatter 现在不像以前(在我添加 scatt.scale = 2.5 之前)一样工作,不是所有的图像散点图中的是连接的,尤其是 Y 轴中的那些:

只允许在x轴上平移,所以我的问题似乎来自scatt.do_translation_y,但我没有找到解决这个问题的方法。

我希望我能很好地解释我的问题。

感谢您的宝贵时间^^

散点图的大小将由布局定义 - 在您的情况下为 GridLayout - 所以剩下的只是使图像大小与散点图相同 - 像这样

在kv文件中:

<ScatterWithImage>:
     src: "some_path"
     Image:
         size: root.size
         stretch: True
         source: root.src

在 python 文件中:

 class ScatterWithImage(Scatter):
     src = StringProperty("some_path_to_an_image")
 gridlayout.add_widget(ScatterWithImage(src=y))