- 2,505
- 1,134
- Версия MoonLoader
- .027.0-preview
Привет.
С геометрией всегда плохо было. Не знаете, как сделать РОВНОЕ центрирование элементов в ImGui? Не знаю, как правильно объяснить, постараюсь с помощью скриншотов.
Вот с таким кодом:
Я получаю такой такой результат:
Мне нужно, чтобы элементы были ровно по центру, а не начало элемента было по центру.
Кнопка приблизительно в центре, можно, конечно, немного поэкспериментировать с делением, но тогда другие элементы собьются.
С текстом можно такой трюк провернуть:
А с остальными элементами не знаю, как подобное сделать.
Вот, что я получаю, когда делю X окна на 2:
А мне нужно, чтобы все эелементы были вот такими
То есть, ровно по центру, вне зависимости от их размеров.
С геометрией всегда плохо было. Не знаете, как сделать РОВНОЕ центрирование элементов в ImGui? Не знаю, как правильно объяснить, постараюсь с помощью скриншотов.
Вот с таким кодом:
Lua:
-- 1
imgui.SetCursorPosX((imgui.GetWindowWidth() - 75) / 2)
imgui.Button("Button", imgui.ImVec2(100, 50))
-- 2
imgui.SetCursorPosX(imgui.GetWindowWidth() / 2)
imgui.InputText("##1", search)
-- 3
imgui.SetCursorPosX((imgui.GetWindowWidth() - 75) / 2)
imgui.InputText("##2", search)
-- 4
imgui.SetCursorPosX((imgui.GetWindowWidth() - 75) / 2)
imgui.SliderInt("##1", slider, 0, 3)
Мне нужно, чтобы элементы были ровно по центру, а не начало элемента было по центру.
Кнопка приблизительно в центре, можно, конечно, немного поэкспериментировать с делением, но тогда другие элементы собьются.
С текстом можно такой трюк провернуть:
Lua:
imgui.SetCursorPosX((imgui.GetWindowWidth() - imgui.CalcTextSize(u8(text)).x) / 2)
imgui.Text(u8(text))
Вот, что я получаю, когда делю X окна на 2:
А мне нужно, чтобы все эелементы были вот такими
То есть, ровно по центру, вне зависимости от их размеров.