Kivy 可点击的替代按钮的图像
我想用一张图片来代替传统的按钮,使用的是kivy这个工具。
我尝试使用background_disabled_normal和background_disabled_down这两个属性。
这是我在.kv文件中写的按钮部分:
Button:
on_press: root.do_action()
background_disabled_normal: str(False)
Image:
source: 'icon.png'
y: self.parent.y + self.parent.height - 250
x: self.parent.x
size: 250, 250
allow_stretch: True
但是没有成功。
1 个回答
12
background_disabled_normal: str(False)
这里应该是一个指向图片的文件路径,而不是一个布尔值的字符串。而且,这个属性是用来设置按钮在禁用状态下的背景颜色 - 你确定不想用 background_normal
吗?
其实还有另一种方法可以做到这一点,可能更适合你;按钮的功能被抽象成了 ButtonBehavior,可以和任何小部件结合使用。
from kivy.uix.behaviors import ButtonBehavior
from kivy.uix.image import Image
class ImageButton(ButtonBehavior, Image):
pass
这个 ImageButton 会拥有图片的所有属性(你可以设置图片来源)同时 也会有按钮的所有事件(比如按下时的事件等)。