#python #jupyter-notebook #ipywidgets
Вопрос:
С помощью Jupyter notebook и ipywidgets я создал список вкладок, каждая вкладка содержит кнопку. Я бы хотел, чтобы при нажатии кнопки она закрывала свою вкладку, оставляя остальную часть абс нетронутой. Я попробовал следующее, но это не работает, так как функция close_on_click всегда связана с последней вкладкой.
import ipywidgets as widgets
from ipywidgets import HBox, VBox
import numpy
import matplotlib.pyplot as plt
from IPython.display import display
%matplotlib inline
tabs = []
for k in range(10):
wg_name = widgets.Text(
value=str(k),
placeholder='Index',
description='Name:',
disabled=False
)
wg_close = widgets.Button(
description='Close tab',
)
tabs.append(VBox(children=[wg_name, wg_delete]))
@wg_close.on_click
def close_on_click(b):
tab[k].close()
main_tab = widgets.Tab(children=tabs)
for k in range(10):
main_tab.set_title(k, str(k))
main_wg = VBox(children=[main_tab])
display(main_wg)