gpt4 book ai didi

python - 禁用微调器的背景颜色

转载 作者:太空宇宙 更新时间:2023-11-03 16:03:25 25 4
gpt4 key购买 nike

我正在尝试设置微调器的背景颜色(如果已禁用)。

这是我在 kv 文件中尝试的内容:

<MySpinner@Spinner>:
background_normal: ''
background_disabled_normal: ''
disabled_color: (0, 0, 0, 1)
color: (0, 0, 0, 1)
background_disabled_color: (1,1,1,1)
background_color: (0.62,0.67,0.72,1)

显然 background_disabled_color 不是正确的参数。但我应该用什么来代替呢?

最佳答案

它继承自 Button,因此如果它不在 spinner.py 文件中,它将位于 button.py

您可以看到 Button 使用图像作为背景,而 background_color 仅着色,但没有 background_disabled_color(据我所知)。背景的工作方式如下 - 您设置 background_color 并且如果小部件被禁用,它会将默认背景图像着色为禁用(有点 darker ):

Button:
text: 'jump'
disabled: True
# background_disabled_normal: '' # allow to see the behavior w/o default disabled bg
background_color: (1,0,0,1)

要为禁用的小部件实现除默认background_color之外的另一种颜色,您需要在禁用Button时更改background_color(在您的情况下) 旋转器):

from kivy.lang import Builder
from kivy.base import runTouchApp
from kivy.uix.boxlayout import BoxLayout
Builder.load_string('''
<Test>:
Spinner:
id: special
values: [str(i) for i in range(10)]
size_hint_y: None
text: 'jump'
disabled: True
#background_disabled_normal: ''
background_color: (1,0,0,1) if not self.disabled else (0,1,0,1)
Button:
on_release: special.disabled = not special.disabled
''')
class Test(BoxLayout): pass
runTouchApp(Test())

请注意,这对于类似于 DropDown 的子项不起作用,因为它们使用 different类,因此要更改它们,您需要更改该类的属性。

关于python - 禁用微调器的背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40084041/

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