python - 在 Kivy 中更改按钮的背景颜色

标签 python kivy

我是 Kivy 的新手,在指定按钮的背景颜色时遇到了问题。这是我的简单示例:

# custombutton.py

from kivy.app import App
from kivy.uix.widget import Widget


class MyWidget(Widget):
    pass


class CustomButtonApp(App):
    def build(self):
        return MyWidget()


if __name__ == '__main__':
    CustomButtonApp().run()

以及随附的 kv 文件 custombutton.kv:

#:kivy 1.7.2

<MyWidget>:
    canvas:
        Color:
            rgb: (0.93, 0.93, 0.93)
        Rectangle:
            pos: self.pos
            size: self.size

    Button:
        center: self.parent.center
        font_size: 14
        height: 28
        background_color: (1.0, 0.0, 0.0, 1.0)
        text: "I'm a Button"

我确定我遗漏了一些明显的东西,但我已经弄乱了一个多小时,但一无所获。该按钮似乎染上了淡淡的深红色:

enter image description here

这不是Kivy中为Button指定背景颜色的方式吗?

谢谢!

最佳答案

自从第一次发布以来已经有一段时间了,所以也许随着更新他们想出了一个更好的解决方案:

Button:
    background_normal: ''
    background_color: 1, .3, .4, .85

由于按钮有一个默认的灰色,添加背景颜色只会给按钮着色。通过将 background_normal 设置为 '' 将默认值重置为白色。在白色 Canvas 上,background_color 的效果与您预期的一样。

文档

1) https://kivy.org/docs/api-kivy.uix.button.html?highlight=button#module-kivy.uix.button

关于python - 在 Kivy 中更改按钮的背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20181250/

相关文章:

python - 对齐没有公共(public)索引的 pandas DataFrame

python - 计算 pandas 列中的正值

python - 添加 kivy 自定义小部件仅添加第一个布局

python - 下拉菜单在 Kivy (Python) 中部分可见

linux - Ubuntu 中的 Buildozer 启动问题为 'command not found'

python - Kivy - 如何在标签中添加多个标签或按钮

python - 如果子进程被杀死,多处理池挂起

python - praw:获取 subreddit 中随机帖子的正文和标题

python - 没有在 PyCharm 中添加 WSL python 解释器的菜单

ios - 麻烦交叉编译 Python 2 Xcode : kivy-ios distribution throwing error