如何在 Kivy 中制作双音 "Button"?
How do I make a two tone "Button" in Kivy?
我想用Kivy做一个超级简单的二音"button"。问题是我不想添加背景图片。
我确定 - 有人会问我自己尝试了什么 - 但我还不是初学者,我不知道从哪里开始。但是,我擅长复制和粘贴。
这是一张最能描述我的照片 objective:
编辑:
我没有 post 图像的 10 个声誉点。然而,想象一个简单的按钮 - 有一条对角线 - 底部的颜色与顶部的颜色不同。
编辑 (2):
在此先感谢您!
这是此类按钮的一个工作示例。您可以使用 canvas 来创建您想要的效果。这是代码:
import kivy
kivy.require('1.8.0')
from kivy.app import App
from kivy.uix.relativelayout import RelativeLayout
from kivy.uix.button import Button
from kivy.uix.button import Label
from kivy.uix.button import ButtonBehavior
from kivy.lang import Builder
from kivy.graphics import Triangle
from kivy.graphics import Color
Builder.load_string("""
<TwoColorsButton>:
size_hint: None,None
size: 250,250
font_size: '26dp'
canvas.before:
Color:
rgba:0.5,0,0,1
Triangle:
points: [0,0, 0,root.size[1], root.size[0],0]
Color:
rgba:0,0,0.5,1
Triangle:
points: [0,root.size[1],root.size[0],root.size[1],root.size[0],0]
text:'click me'
on_press:print "I've been pressed"
""")
class TwoColorsButton(ButtonBehavior,Label):
pass
class TwoColorsApp(App):
def build(self):
my_button = TwoColorsButton()
return my_button
if __name__ == '__main__':
TwoColorsApp().run()
我想用Kivy做一个超级简单的二音"button"。问题是我不想添加背景图片。
我确定 - 有人会问我自己尝试了什么 - 但我还不是初学者,我不知道从哪里开始。但是,我擅长复制和粘贴。
这是一张最能描述我的照片 objective:
编辑:
我没有 post 图像的 10 个声誉点。然而,想象一个简单的按钮 - 有一条对角线 - 底部的颜色与顶部的颜色不同。
编辑 (2):
在此先感谢您!
这是此类按钮的一个工作示例。您可以使用 canvas 来创建您想要的效果。这是代码:
import kivy
kivy.require('1.8.0')
from kivy.app import App
from kivy.uix.relativelayout import RelativeLayout
from kivy.uix.button import Button
from kivy.uix.button import Label
from kivy.uix.button import ButtonBehavior
from kivy.lang import Builder
from kivy.graphics import Triangle
from kivy.graphics import Color
Builder.load_string("""
<TwoColorsButton>:
size_hint: None,None
size: 250,250
font_size: '26dp'
canvas.before:
Color:
rgba:0.5,0,0,1
Triangle:
points: [0,0, 0,root.size[1], root.size[0],0]
Color:
rgba:0,0,0.5,1
Triangle:
points: [0,root.size[1],root.size[0],root.size[1],root.size[0],0]
text:'click me'
on_press:print "I've been pressed"
""")
class TwoColorsButton(ButtonBehavior,Label):
pass
class TwoColorsApp(App):
def build(self):
my_button = TwoColorsButton()
return my_button
if __name__ == '__main__':
TwoColorsApp().run()