当我尝试更新包含其他动态创建容器的容器时,它不会改变。我尝试了不同的选项,但在当前选项中,我在更新函数之前定义了包含容器的变量,并在发生更改时调用此函数:
history_array = []
fig_array = []
history_vbox = widgets.VBox(history_array)
viz_vbox = widgets.VBox(fig_array)
left_box = widgets.HBox([])
gui = widgets.HBox([left_box, viz_vbox])
# updates the gui
def update_gui():
global gui
gui = widgets.HBox([left_box, viz_vbox])
display(gui)
稍后在脚本中,我会全局更改容器的方式如下:
left_box = widgets.VBox([input_box, eq_out0, eqchoice, history_vbox])
我尝试在函数更改容器之前显示容器,但没有使用display()并尝试了许多其他选项,但仍然只显示一个空列表。
我将笔记本放在github上,IpySci.ipynb显示当前状态,并描述了问题。IpySci-Copy1.ipynb是我的早期版本,显示基本功能按预期工作。 github.com/PMK89/IpySci/