我是Kivy的新手,无法指定Button的背景颜色.这是我的简单例子:
# 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,1.0) text: "I'm a Button"
我相信我错过了一些明显的事情,但是我已经搞砸了一个多小时,而且无处可去.这个按钮似乎变得很暗淡的红色:
这是不是在Kivy中指定Button的背景颜色的方法?
谢谢!
解决方法
啊,这是一个常见的混乱.问题是Button.background_color真的可以作为一种色彩,而不仅仅是块颜色.由于默认的背景是一个灰色的图像(通常你会看到一个没有按钮的按钮),你最后看到的是一个红色的色调,这个灰色的图像,就像你所观察到的深红色一样.
您可以通过将背景图像替换为纯白色(不必超过几个像素),或以其他方式播放background_normal和background_down属性来获得所需的行为.当你的background_color着色新的纯白色图像,你会得到纯红色.
我想这不是很清楚的文档,我会尽力改善它.