我正在创建一个配置器,允许用户从一组合法值中进行选择。对于每个合法值,我创建一个选项(本质上是一个菜单按钮)。如果用户选择一个选项,则该选项会将值更改为其标题。
请注意,具有当前值的选项具有与其他选项不同的属性。我想在选择后循环选择并更改属性以匹配新值。
我可以通过将legal_choices
列表传递给所有选项来循环选择(或者做一些更聪明的事情),但我不知道如何编写循环遍历小部件列表并更改其属性的代码。
for vv in leg_values:
choice = Choice(vv, self, item)
if vv == self.get_var(item):
choice = urwid.AttrMap(choice,'cur_value')
legal_choices.append(choice)
var_item = SubMenu(top,item,legal_choices)
有谁知道如何更改 urwid 中小部件的属性?