首页 > 解决方案 > 如何使用 Kivy 和 Python 使我的点“ping”?

问题描述

我正在为大型建筑寻找软件。下面的链接是我使用 Kivy 的代码的图像。如何擦除该点,并使其每隔一段时间再次出现以获得“ping”效果?

谢谢

链接:https ://gyazo.com/41a062ab37c4a0643b74b47d0bf689ef

标签: pythonkivy

解决方案


您只需添加一个调用即可Clock.schedule_interval()调用实现所需闪烁效果的方法:

def btn_centrum(self):
    with self.canvas:
        Color(1,0,0,.5, mode='rgba')
        self.rect = Rectangle(pos=(277,650), size=(10,10))
        self.opacity = 2
    Clock.schedule_interval(self.blink, 0.5)

def blink(self, dt):
    if self.opacity == 2:
        self.opacity = 0
    else:
        self.opacity = 2

一些额外的评论:

  • 虽然创建一个名为的类FloatLayout会起作用,但创建一个Widget与现有 kivy 同名的类是不好的做法Widget
  • 当您在此处发布问题时,请发布代码而不是代码图像。如果您只是将代码复制/粘贴到您的问题中,对我们双方来说都更容易。

推荐阅读