在kivy中更改按钮或标签文本颜色

22

我正在阅读 这本kivy书,虽然我知道如何改变按钮的背景颜色,但我还没有找到修改文本颜色的关键字。

我看到了这个以及其他问题。这是我的代码:

#!/usr/bin/kivy
import kivy
kivy.require('1.7.2')

from random import random
from kivy.app import App
from kivy.uix.widget import Widget
from kivy.uix.gridlayout import GridLayout
from kivy.graphics import Color, Ellipse, Rectangle

class MinimalApp(App):
    title = 'My App'
    def build(self):
        root = RootLayout()
        return(root)

class RootLayout(GridLayout):
    pass

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

在.kv文件中:

#:kivy 1.7.2
#:import kivy kivy

<RootLayout>:
    rows: 1
    Label:
        text: "Why does this not work?"
#        rgba: 1,0,1,1                  # doesn't work
#        Color:                         # doesn't work
#                rgba: 1,0,1,1          # doesn't work
#       font_color: rgba: 1,0,1,1
        canvas.before:
            Color:
                rgba: 0, 0, 0, 1
            Rectangle:
                pos: self.pos
                size: self.size
2个回答

37

使用color(全部小写):

<RootLayout>:
    rows: 1
    Label:
        text: "Why does this not work?"
        color: 1,0,1,1 # <-----------
        canvas.before:
            Color:
                rgba: 0, 0, 0, 1
            Rectangle:
                pos: self.pos
                size: self.size

4
如果您在处理这个答案时遇到问题,那很可能是canvas对象的实现。请注意@falsetru调用的是“canvas.before”事件,而不是普通的“canvas:”。 - LargeDachshund

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接