kivy python 闪烁文字

Posted

技术标签:

【中文标题】kivy python 闪烁文字【英文标题】:kivy python flashing text 【发布时间】:2016-11-21 12:21:29 【问题描述】:

我想在我的 kivy 应用中显示闪烁的文本(每 1 秒)。我已经通过谷歌搜索,但找不到任何关于它的示例/信息。

是否可以在 kivy 中进行闪烁文本(标签)?

编辑:

我这样做的方式是我调用一个时钟来每秒调用一个特定的函数来更新屏幕。

我也定义了全局变量cnt,在上面提到的函数中我使用了if语句:

if cnt == 1:
    screen.ids.mynumber.text = 'STAND CLEAR'
if cnt == -1:
    screen.ids.mynumber.text = ''
cnt = - cnt

通过这种方式,我每秒将 cnt 值更改为 -cnt 并显示或不显示文本。在 kivy 中有更好的方法吗?

【问题讨论】:

【参考方案1】:

我会用动画来做到这一点。基本上就是这样,小部件保存您的文本:

anim  = Animation(alpha=0, duration=0.1) + Animation(alpha=0, duration=1)
anim += Animation(alpha=1, duration=0.1) + Animation(alpha=1, duration=1)
anim.repeat = True
anim.start(widget)

它会快速将小部件设置为透明,保持一秒钟,然后快速设置为不透明,保持一秒钟,重复。

【讨论】:

我还要注意,使用这样的透明度可能比将文本设置为'' 的 OP 方法更好,因为重新生成文本纹理的效率远低于修改不透明度。跨度>

以上是关于kivy python 闪烁文字的主要内容,如果未能解决你的问题,请参考以下文章

Python - 如何向我的 kivy 应用程序添加第二个“屏幕”?

kivy textinput 无法输入文字

Python - Kivy - Python 在安装 kivy 期间停止工作

python文本颜色设置

Python+kivy+SQLite:如何一起使用

通过python中的kivy模块开发app