【发布时间】:2015-04-12 17:18:58
【问题描述】:
我想在 Kivy 中制作一个超级简单的双音“按钮”。问题是我不想添加背景图片。
我敢肯定——有人会问我自己尝试过什么——但我还不是初学者,我不知道从哪里开始。但是,我擅长复制和粘贴。
这是最能描述我的目标的图片:
编辑:
我没有 10 个声望点来发布图片。然而,想象一个简单的按钮 - 有一条对角线 - 底部的颜色与顶部的颜色不同。
编辑(2):
非常感谢您!
【问题讨论】:
我想在 Kivy 中制作一个超级简单的双音“按钮”。问题是我不想添加背景图片。
我敢肯定——有人会问我自己尝试过什么——但我还不是初学者,我不知道从哪里开始。但是,我擅长复制和粘贴。
这是最能描述我的目标的图片:
编辑:
我没有 10 个声望点来发布图片。然而,想象一个简单的按钮 - 有一条对角线 - 底部的颜色与顶部的颜色不同。
编辑(2):
非常感谢您!
【问题讨论】:
这是此类按钮的一个工作示例。您可以使用画布来创建您想要的效果。代码如下:
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()
【讨论】: