python - 如何在python的kivy app模块中更改屏幕背景的颜色?
Posted
技术标签:
【中文标题】python - 如何在python的kivy app模块中更改屏幕背景的颜色?【英文标题】:How to change the colours of the background of the screen in kivy app module of python? 【发布时间】:2016-08-14 05:53:14 【问题描述】:我有一个在 python 中开发的 kivy 应用程序,但我有一个问题:有时黑色背景太暗,我想知道在 Kivy 中属性Screen
是否有可能变为负色的属性,我的意思是,比如有些手机可以选择把手机的所有颜色都改成负片,解决颜色问题。我是使用 Kivy 开发的新手,所以我不知道 Kivy 解决这个问题的潜力。我已经找了几天了,我还没有发现任何东西。如果有人知道如何解决这种不便,那将非常有帮助。
【问题讨论】:
我不知道(全局更改它),但它会是一个不错的功能。否则,我想您需要创建自己的函数来更改您需要的每个小部件的background_color
。
【参考方案1】:
您可以使用Window.clearcolor
将背景颜色全局设置为某个值:
from kivy.core.window import Window
Window.clearcolor = (.9, .9, .9, 1)
您还可以通过在画布上绘制来手动设置每个屏幕(或几乎任何小部件)。
<WhiteScreen@Screen>:
canvas.before:
Color:
rgba: 1, 1, 1, 1
Rectangle:
pos: self.pos
size: self.size
或者每次进入需要不同背景的屏幕时,更改Window.clearcolor
,最好覆盖on_pre_enter
方法,并在on_leave
中重新设置。
【讨论】:
我在 macos 运行时得到未定义的 Window 对象有什么建议吗? @NikolaLukic 你可以尝试稍后在代码中导入它。以上是关于python - 如何在python的kivy app模块中更改屏幕背景的颜色?的主要内容,如果未能解决你的问题,请参考以下文章