需要在标签页中设置一个 ipywidget 容器小部件(HBox、VBox 等(以下是我尝试仅使用文本小部件列表作为任何其他小部件的替代项的虚拟示例
创建一个 VBox 小部件中的内容列表,将此小部件列表绑定到 VBox,然后显示生成的 VBox;这将按预期工作:
import ipywidgets as widgets
from IPython.display import display
#just "dummy" widgets for exsample
subwids=[widgets.Text(value='Hello City'),
widgets.Text(value='Hello State'),
widgets.Text(value='Hello country '),
widgets.Text(value='Hello Contant'),
widgets.Text(value='Hello Continent')
]
#bind the dummy widgets to a VBox
BOX=widgets.VBox(subwids)
#display the VBox
display(BOX)
现在我正在尝试在选项卡小部件的选项卡中设置现有的 VBox,这是它不起作用的地方,并抛出一个错误,在运行以下内容时可以看到:
tab=widgets.Tab(BOX)
tab.set_title(0, 'GeoLevels')
display(tab)
但是我希望它做的是除了选项卡中的VBox,就像我在Qt中所做的那样
当我重现您的示例时,我遇到了:
特征错误:Tab 实例的"子"特征必须是元组,但必须是类 'ipywidgets.widgets.widget_box 的值。VBox'被指定。
之后,我将其作为元组传递:
tab=widgets.Tab((BOX,))
tab.set_title(0, 'GeoLevels')
display(tab)
现在它显示选项卡。