В AHK (Autohotkey) мне нужно загрузить список из таблицы, в которой есть основные категории и каждая из которых имеет свои отдельные записи.
blue red green yellow
Item 1 of blue Item 1 of red Item 1 of green Item 1 of yellow
Item 2 of blue Item 2 of red Item 2 of green Item 2 of yellow
Item 3 of blue Item 3 of red Item 3 of green Item 3 of yellow
Item 4 of blue Item 4 of green Item 4 of yellow
Item 5 of blue Item 5 of green
Item 6 of green
Item 7 of green
(Было бы неплохо иметь возможность загружать таблицу из файла, а не записывать ее прямо в код скрипта. Но я не знаю, в каком формате таблицы сохранять таблицу и как динамически включать ее в скрипт. Но это просто примечание).
Таблицу также можно просмотреть здесь как фактическую таблицу:
https://docs.google.com/spreadsheets/d/1rFDX_XpD0seDHpkvqSHLnE8HwTmJHwjPCqSv_zga>
Вот подробное видеомоделирование (можно транслировать в браузере):
Видео: https://drive.google.com/open?id=1k4JBy9DShBKwQRswdz8Rxrb9wfvXXGmy
Видео было сделано со скриншотами некоторых списков, которые мне удалось создать. Затем он редактируется вместе, чтобы он выглядел как настоящий рабочий сценарий.
Как видно из видео, списки должны перемещаться с помощью клавиш со стрелками вверх и вниз. Нажатие клавиши Enter должно открыть список выбранной категории. Сами элементы списка также должны быть доступны для навигации с помощью клавиш со стрелками.
Возврат к списку основных категорий должен быть возможен с помощью клавиши Backspace или стрелки влево (как на видео).
Однако, если не возвращаться назад, а вместо этого нажимать Enter на одном элементе списка, тогда скрипт должен сохранить порядковый номер выбранной основной категории и порядковый номер фактического выбранного элемента в две временные переменные. С этими переменными я должен выполнить дальнейшие действия.
Это то, что я получил до сих пор. Мне удалось создать списки только для видеосимуляции.
#SingleInstance, Force
;GUi Layout
;-----------------------------------
Gui, +AlwaysOnTop
;Gui,+Delimiter
Gui, Add, ListBox, x20 y20 w180 r10 AltSubmit vList1 gSubit_All ,blue|red|green|yellow|
Gui, Add, ListBox, x+40 w200 r10 AltSubmit vList2 gSubit_All ,Item 1 of green|Item 2 of green|Item 3 of green|Item 4 of green|Item 5 of green|Item 6 of green|Item 7 of green|
Gui, Add, ListBox, x+40 w200 r10 AltSubmit vList3 gSubit_All ,Item 1 of blue|Item 2 of blue|Item 3 of blue|Item 4 of blue|Item 5 of blue|
Gui, Add, ListBox, x+40 w200 r10 AltSubmit vList4 gSubit_All ,
Gui, Show, x800 y150 w500 h200, Helper HS
return
Будем признательны за любую помощь с динамической загрузкой таблицы или с навигацией по двум спискам с помощью клавиши Enter и клавиши со стрелкой влево.