В TraitsUI для элемента() можно настроить список параметров visible_when() с более чем 1 элементом?visible_when с несколькими логическими тестами
Например, я хотел бы что-то вроде этого:
Group(
Item(FirstItem, visible_when = 'foo == 1 and bar == 0'),
Item(SecondItem, visible_when = 'foo == 0 and bar == 1),
Item(ThirdItem, visible_when = 'foo == 0 and bar == 0)
)
Так что только FirstItem, SecondItem или ThirdItem бы обнаружиться на основе значений в Foo и бар.
Возможно ли это? Я сделал первоначальную попытку, но мне не повезло (может быть, потому, что один из моих логических тестов включает в себя строку - это моя проблема с строковым тестом внутри строки visible_when? Это то, что мой тест visible_when выглядит (и isn 'т не работает):
visible_when = 'Initial_value == 1 && display_units == \'SI\'',
Я попытался с СИ в двойных кавычках „СИ“ и с уцелевшими одинарными кавычками, как выше ... ни работал для меня Я также попытался использовать. и «и» & & 'без разницы либо.
Я думал, что так оно и будет работать. Я посмотрел на ваш пример модификации, и он тоже работал точно так, как должен. Поэтому я более внимательно посмотрел на свой код ... один из тестов был против значения enum, и у меня есть список, содержащий все возможные элементы enum, и я тестировал этот список, а не значение enum! Спасибо, что разбудил меня до моей ошибки :) – Steve76063