#combobox #ipywidgets
Вопрос:
Я использую виджет Combobox и заставляю этот виджет наблюдать за вызовом функции give. Однако проблема, с которой я столкнулся, заключается в том, что, когда я/пользователь вводил «ввод» в поле ввода, функция вызывалась несколько раз. В идеале я бы хотел, чтобы функция наблюдения вызывалась только после того, как я завершу ввод и нажму «ввод».
Вот пример:
example_widget = widgets.Combobox( options = ['A','A1','A10','A101'],
ensure_option = True, description ='Example')
а вот и наблюдение; перезвоните
example_widget.observe(foo, 'value')
def foo(,_):
print('call back got triggered')
таким образом, по мере постепенного ввода одного типа «A10» обратный вызов запускался три раза, а именно при вводе A, A1, A10.
Идеальное поведение состоит в том, что я ввожу A10, а затем нажимаю «enter», функция обратного вызова foo() была выполнена только один раз.
Спасибо
Ответ №1:
example_widget = widgets.Combobox( options = ['A','A1','A10','A101'],
ensure_option = True, description ='Example', continuous_update = False)
необходимо установить для параметра continuous_update значение False.