Выбор темы через Combo

Mico

Активный
Автор темы
252
50
Версия MoonLoader
.026-beta
Есть код, там тема выбирается через Checkead_Radio (не бейте, если не так написал), мне надо, чтобы она выбиралась через combo, пытался сделать, что то, но так и не сделал.. помогите :)
Lua:
for i, value in ipairs(themes.colorThemes) do
                    if imgui.RadioButton(value, checked_radio, i) then
                           themes.SwitchColorTheme(i)
                           mainIni.config.theme = i
                        inicfg.save(mainIni, directIni)
                       end
                end

Как я пытался:

Код:
for i, value in ipairs(themes.colorThemes) do
                    if imgui.Combo(u8"Выбор темы", combo, i) then
                           themes.SwitchColorTheme(i)
                           mainIni.config.theme = i
                        inicfg.save(mainIni, directIni)
                       end
                end
 

Neon3333

Известный
181
71
Есть код, там тема выбирается через Checkead_Radio (не бейте, если не так написал), мне надо, чтобы она выбиралась через combo, пытался сделать, что то, но так и не сделал.. помогите :)
Lua:
for i, value in ipairs(themes.colorThemes) do
                    if imgui.RadioButton(value, checked_radio, i) then
                           themes.SwitchColorTheme(i)
                           mainIni.config.theme = i
                        inicfg.save(mainIni, directIni)
                       end
                end

Как я пытался:

Код:
for i, value in ipairs(themes.colorThemes) do
                    if imgui.Combo(u8"Выбор темы", combo, i) then
                           themes.SwitchColorTheme(i)
                           mainIni.config.theme = i
                        inicfg.save(mainIni, directIni)
                       end
                end
C++:
Combo(const char* label, int* current_item, const char* const* items, int items_count, int height_in_items = -1)

Разберем параметры:
1. const char* label - название твоего комбобокса( либо "Name", либо переменная, хранящая в себе строку local var = "Name")
2. int* current_item - переменная imgui.ImInt(0)
3. const char* const* item - список, представленный в виде строки, каждый новый пункт списка будет начинаться после '\0' (для таблицы, в которой храним наш список, просто используем table.concat(yourTable, '\0')..'\0' )
4. items, int items_count - целочисленная переменная, указывает количество пунктов списка, если список в виде таблицы, можно использовать #table
5. int height_in_items - количество пунктов списка, отображаемых в нашем Combo( если пунктов больше, чем установлено для отображения используется скроллинг ).


Думаю, тут уже разберешься где ты налажал и переделаешь.
 

Hideme Flow

Известный
573
200
C++:
Combo(const char* label, int* current_item, const char* const* items, int items_count, int height_in_items = -1)

Разберем параметры:
1. const char* label - название твоего комбобокса( либо "Name", либо переменная, хранящая в себе строку local var = "Name")
2. int* current_item - переменная imgui.ImInt(0)
3. const char* const* item - список, представленный в виде строки, каждый новый пункт списка будет начинаться после '\0' (для таблицы, в которой храним наш список, просто используем table.concat(yourTable, '\0')..'\0' )
4. items, int items_count - целочисленная переменная, указывает количество пунктов списка, если список в виде таблицы, можно использовать #table
5. int height_in_items - количество пунктов списка, отображаемых в нашем Combo( если пунктов больше, чем установлено для отображения используется скроллинг ).


Думаю, тут уже разберешься где ты налажал и переделаешь.
С++?