Заголовки Imgui

taichi

Известный
Автор темы
15
1
Версия MoonLoader
.026-beta
Как сделать вот такие вот заголовки "General", "Spectating"? Облазил imgui.lua, не нашёл ничего. Очень нужно, пожалуйста, подскажите кто знает.



1594465923744.png
 

Dmitriy Makarov

25.05.2021
Проверенный
2,480
1,113
Про ToggleButton я понял, что это Imgui Addon, а я про заголовки говорю, как их можно отрисовать? Вот этот вот General с таким не выделяющимся background-color.

Посмотреть вложение 62176
Это CollapsingHeader вроде, если их можно открывать/закрывать
Lua:
if imgui.CollapsingHeaders("test") then
    -- code
end
 

taichi

Известный
Автор темы
15
1
Это CollapsingHeader вроде, если их можно открывать/закрывать
Lua:
if imgui.CollapsingHeaders("test") then
    -- code
end

Это не подходит мне, так как там есть треугольник, который смотрит вниз. И, видимо, в изначальном скрипте эти заголовки открыть нельзя. Они просто стоят на одном месте и не стакаются при прокрутке вниз.
 

Cosmo

Известный
Друг
646
2,604
Это кастомные кнопки, он сам их рисует(это не картинка).
Тебе ответили на вопрос в самом начале, он делает это при помощи кастомных imgui.Buttons
Lua:
function imgui.OnDrawFrame()
    local high, width = getScreenResolution()

    imgui.SetNextWindowSize(imgui.ImVec2(500, 300), imgui.Cond.FirstUseEver)
    imgui.SetNextWindowPos(imgui.ImVec2(high / 2, width / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
    imgui.Begin(u8'##Subtitles', _, imgui.WindowFlags.NoCollapse)

        imgui.Subtitle('Subtitle 1', 40)
        imgui.Text('Text 1.1')
        imgui.Text('Text 1.2')
        imgui.Text('Text 1.3')
        imgui.Subtitle('Subtitle 2', 40)
        imgui.Text('Text 2.1')
        imgui.Text('Text 2.2')
        imgui.Text('Text 2.3')
        imgui.Subtitle('Subtitle 3', 40)
        imgui.Text('Text 3.1')
        imgui.Text('Text 3.2')
        imgui.Text('Text 3.3')

    imgui.End()
end

function imgui.Subtitle(text, high)
    imgui.PushStyleColor(imgui.Col.Button, imgui.ImVec4(1.0, 1.0, 1.0, 0.05))
    imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(1.0, 1.0, 1.0, 0.05))
    imgui.PushStyleColor(imgui.Col.ButtonActive, imgui.ImVec4(1.0, 1.0, 1.0, 0.05))
    imgui.PushStyleVar(imgui.StyleVar.ButtonTextAlign, imgui.ImVec2(0.1, 0.5))
    imgui.PushStyleVar(imgui.StyleVar.FrameRounding, 1)
        local subtitle = imgui.Button(text, imgui.ImVec2(-1, high))
    imgui.PopStyleVar(2)
    imgui.PopStyleColor(3)
    return subtitle
end
1594584686285.png