我在一个.kv文件中有一个Spinner小部件,我需要这个Spinner的值来启用另一个Spinner小部件。在
这是我尝试过的代码,但它不起作用,并给我一个语法错误:
CustLabel:
text: "Aux LO Pump Status"
CustSpinner:
id: auxlo
text: "Select"
values: ('On', 'Off')
focus: True
on_state: (self.auxlonum.disabled) if (self.auxlo == 'off')
CustLabel:
text: "Aux LO Pump Number"
CustSpinner:
id: auxlonum
text: "Select"
values: ('# 1', '# 2')
focus: True
实际上,我更希望auxlonum小部件启动时禁用并“灰显”,然后只有在auxlo小部件选择了“开”的情况下才启用,但是我不确定如何实现这一点。在
谢谢。在
首先,您不能使用
on_state
事件,因为它在您选择一个值之前发出。您需要使用on_text
事件。在另一方面,
self.auxlonum
是一个不正确的语法,您应该使用id
来引用kv中的任何小部件。在最后,您只需使用三元运算符语法即可执行以下操作:
或者:
^{pr2}$可执行示例:
相关问题 更多 >
编程相关推荐