gpt4 book ai didi

python - 在 Kivy 中将图像对象作为按钮背景传递

转载 作者:太空狗 更新时间:2023-10-29 18:16:50 27 4
gpt4 key购买 nike

在 Kivy 中,有没有办法将图像对象作为按钮背景而不是图像文件名传递?

button.background_normal 属性只接受字符串。我想自定义图像属性,例如 allow_stretch = False

如果成功,我如何在按钮内指定图像对齐方式,例如。使其左上对齐?

最佳答案

源只是 Button 的一个属性,正如您所指出的那样,它是一个字符串。你想要一个 Widget 中的一个 Widget,这就是 Kivy 的基本工作方式。所以只需按原样添加图像。一点点定位就可以完成剩下的工作。

你必须小心定位。确保它在可见部分并且没有任何东西覆盖它。我在按钮后使用标签,因为它具有透明颜色,因此您可以对其进行试验。例如,如果您的定位错误(尝试 x:0 y:0),您会看到按钮转到标签区域的左下角。

我使用的图像是 Kivy logo :

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.lang import Builder

Builder.load_string("""
<ButtonsApp>:
orientation: "vertical"
Button:
text: "B1"
Image:
source: 'kivy.png'
y: self.parent.y + self.parent.height - 250
x: self.parent.x
size: 250, 250
allow_stretch: True
Label:
text: "A label"
""")

class ButtonsApp(App, BoxLayout):
def build(self):
return self

if __name__ == "__main__":
ButtonsApp().run()

关于python - 在 Kivy 中将图像对象作为按钮背景传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17392202/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com