取消选中已选中的其他复选框

时间:2018-01-16 15:51:30

标签: python events widget jupyter-notebook ipywidgets

我写了这段代码(实际上是使用Jupyter-Notebook):

{{1}}

现在我有每个文本字符串和chackboxes行。当时只有一个复选框处于活动状态。如果我选中另一个复选框,则会检查它们。我想做的是:如果我选中另一个复选框,则第一个复选框会自动禁用(对于每个短信的复选框组)。

我想我需要为此创建事件。我找到了这个: https://jsfiddle.net/beaver71/jg7Lgc43/

但是我无法理解如何为我的所有盒子实现它?

1 个答案:

答案 0 :(得分:0)

我想了很多关于复选框列表并在循环中为它们创建事件,但最终找到了简单的方法: 使用RadioButtons。为了处理一行中所有复选框都关闭的情况,我在RadioButton参数中添加了另一个选项:

from ipywidgets import widgets
buttons_list = []
for ind in range(0,10):
    print('My message',ind)
    rb = widgets.RadioButtons(options=['cb1', 'cb2', 'noone checked'],
                          value='cb1')
    display(rb)
print('---'*41)
buttons_list.append(rb)
相关问题