我正在构建一个分为 3 列和 1+ 行的 GUI。行数由用户通过 IntField 决定。
由于每个(显示的)行都将包含绘图,因此我不想将它们从窗口中分离,以避免重新创建它们。所以我想隐藏不应该显示的行,保留已经创建和附加的图。为了做到这一点,我正在考虑容器的可见属性。
不幸的是,就我而言,订阅似乎不适用于可见字段。
这是代码:
enamldef MyMenu(Container):
attr context
IntField:
minimum = 1
value := context.first_row
IntField:
minimum = 1
value := context.last_row
enamldef MyPanel(Container):
attr context
Label:
text << str(context.last_row - context.first_row)
# subscription will work and label is updated
Looper:
iterable = range(35)
Container:
visible << loop_index <= context.last_row - context.first_row
# visible won't update.
# Only the init value of last_row and first_row will have an impact
contraints = [height == 150]
Label:
text << str(context.last_sig - context.first_sig)
# subscription will work and label is updated even in the loop & the container
有人有想法吗?