gpt4 book ai didi

python - 如何更改 Kivy 中的背景颜色

转载 作者:太空宇宙 更新时间:2023-11-03 15:41:12 30 4
gpt4 key购买 nike

我需要一些帮助来处理我尝试使用 kivy 和 python 3 编写的程序,但是我对这两者都比较陌生。我在程序中需要的是设置两种不同的背景颜色,用户可以在其中切换(夜间模式和白天使用的模式)

#globalvariable
backgroundcolour = [50, 50, 50]

class MainScreen(Screen):

rgb = StringProperty()
rgb = backgroundcolour

def changebackground(self):
self.canvas.clear()
backgroundcolour = [55, 5, 99]
print("DONE")

基维文件:

<MainScreen>:
name: 'main'
canvas:
Color:
rgb: root.rgb

然而,在运行changebackground子例程后我所得到的一切,我的kivy窗口只是用空白的黑屏替换了自己。我认为我做错的是我没有刷新窗口或其他什么,但我不知道如何去做。]

非常感谢

最佳答案

canvas:
Color:
rgb: root.rgb

在这部分之后,您必须绘制一些可以覆盖小部件背景的东西:

Rectangle:
size: self.size
pos: self.pos

或在您的changebackground()中:

with self.canvas:
Color(rgb=self.rgb) # rgba might be better
Rectangle(size=self.size, pos=self.pos)

如果您打算在不经常更改颜色样式时使用它,这可能是更理想的选择。最好的办法是使用 canvas.before,特别是如果您有一个可以绘制某些内容的小部件(例如 Button)。

此外,颜色的范围为0 - 1,因此的颜色将是某种非常明亮的紫色。请注意:这只会更改小部件的背景,因此您的窗口背景仍将是默认背景(当前为黑色)。要更改此设置,您需要使用 Window.clearcolor .

关于python - 如何更改 Kivy 中的背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42099231/

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