#netlogo
#netlogo
Вопрос:
Как сказано в названии, я пытаюсь понять, как сохранить в файл и загрузить данные из файла, введенные в меню extraWidget? Я был бы признателен за любую помощь.
Комментарии:
1. что такое меню extraWidget?
2. Экстравиджет, github.com/CRESS-Surrey/eXtraWidgets , является расширением Netlogo, которое создает дополнительную вкладку интерфейса в Netlogo. По сути, это создает динамический графический интерфейс для Netlogo, в котором пользователи могут вводить данные, которые может выполнить модель.. Я полагаю, что он был создан Николасом Пайеттом
Ответ №1:
Я предполагаю, что под «данными, введенными в меню eXtraWidget», вы подразумеваете значения, введенные в виджетах, отображаемых на вкладке eXtraWidget.
Если это так, это довольно легко сделать с помощью xw:export
xw:import
примитивов and .
Предположим, у вас очень простой xw
интерфейс, например:
extensions [ xw ]
to startup
xw:clear-all
xw:create-tab "t" [ xw:set-title "Menu" ]
xw:create-multi-chooser "mc" [
xw:set-items ["a" "b" "c" "d"]
]
end
Это дало бы вам дополнительную вкладку, подобную этой, с «множественным выбором», в которой вы можете выбрать несколько букв («a» и «c» в этом примере):
Чтобы экспортировать весь интерфейс и его содержимое в файл JSON, вы можете просто вызвать:
xw:export "menu.json"
а затем восстановить виджеты и их значения в любое время с помощью:
xw:clear-all
xw:import "menu.json"
Вам нужно позвонить xw:clear-all
, потому xw:import
что в противном случае вас предупредят, что эти виджеты уже существуют.
Комментарии:
1. Спасибо, Николас, можете ли вы сохранить только содержимое виджетов, не сохраняя все меню целиком?
2. Конечно, но вам придется делать это «вручную», используя
xw:get
для извлечения значений иcsv
расширения для сохранения, а затем загружать их обратно с помощьюxw:set
.