Отображение множества ipywidget с помощью flex-box - PullRequest
1 голос
/ 11 февраля 2020

Я пытаюсь использовать опцию layout={'flex-flow': 'flex-wrap'}, как описано в документации Flex-Flow-Reference на ipywidgets, но не заставляю ее работать ни в jupterlab, ни во внешнем интерфейсе ноутбука.

В примере multi-checkbox , изменяя строку 12, не работает:

options_widget = widgets.VBox(options, layout={'flex-flow': 'flex-wrap'})
multi_select = widgets.VBox([search_widget, options_widget])

Видите ли вы возможность добавления layout={'flex-flow': 'flex-wrap'} вместо {'overflow': 'scroll'}? Чего мне не хватает при указании параметров?

Заранее благодарим за любые подсказки!

1 Ответ

0 голосов
/ 11 февраля 2020

Вот пример, я склонен управлять переносом путем создания объекта Layout.

import ipywidgets as widgets
descriptions = 'abcdefgh'
search_widget = widgets.Text()
options_dict = {description: widgets.Checkbox(description=description, value=False) for description in descriptions}
options = [options_dict[description] for description in descriptions]
options_widget = widgets.VBox(options, layout=widgets.Layout(flex_flow='row wrap'))
multi_select = widgets.VBox([search_widget, options_widget])

Дополнительные примеры использования объекта Layout можно найти в документации: https://ipywidgets.readthedocs.io/en/latest/examples/Widget%20Styling.html#Examples

...