ipython CheckboxWidget 放置方式
我想在我的ipython笔记本中创建两个并排的复选框列:
from IPython.html import widgets # Widget definitions
from IPython.display import display # Used to display widgets in the notebook
comps = ['A', 'B', 'C']
trigs = ['X', 'Y', 'Z']
components = []
for comp in comps:
components.append(widgets.CheckboxWidget(description = comp, value=False))
comp_container = widgets.ContainerWidget(children = components)
comp_container.add_class('vbox')
comp_container.add_class("align-start")
triggers = []
for trig in trigs:
triggers.append(widgets.CheckboxWidget(description = trig, value=False))
trig_container = widgets.ContainerWidget(children = triggers)
trig_container.add_class('vbox')
trig_container.add_class("align-end")
main_container = widgets.ContainerWidget(children = [comp_container, trig_container])
main_container.set_css({
'background': '#999999',
'width': '100%',
})
main_container.remove_class('vbox')
main_container.add_class("hbox")
display(main_container)
可惜,这样做的结果是:
https://i.stack.imgur.com/MgyXl.png
有没有办法让两个复选框列表并排显示呢?
1 个回答
2
是的。我不太明白为什么会这样,但你需要在显示小部件之后,改变一下css类 'vbox'
和 'hbox'
:
...
display(main_container)
main_container.remove_class('vbox')
main_container.add_class("hbox")