ToolTip для imgui.Button

Ninthmoon

Известный
Автор темы
464
130
Версия MoonLoader
.026-beta
как добавить подсказку при наведении курсора на кнопку?
 

Ninthmoon

Известный
Автор темы
464
130
Lua:
imgui.Button("click")
imgui.Tooltip("hello world")

function imgui.Tooltip(text)
   if imgui.IsItemHovered() then
      imgui.BeginTooltip()
      imgui.Text(text)
      imgui.EndTooltip()
   end
end
Lua:
if imgui.Button("click") then
end
imgui.Tooltip("hello world")

function imgui.Tooltip(text)
   if imgui.IsItemHovered() then
      imgui.BeginTooltip()
      imgui.Text(text)
      imgui.EndTooltip()
   end
end
 

cort

Активный
244
96
Lua:
            if imgui.Button(u8'Технические неполадки', imgui.ImVec2(480, 30)) then
                sampSendChat('/gov [АО] Тех. Неполадки')
            end
            imgui.SameLine()
            imgui.Hint(u8'Скрипт напишет: /gov [АО] Тех.Неполадки',0)
Где 0 = через какое время появится подсказка. В моём случае сразу. Можно писать: 0.1 и тд.


Lua:
function imgui.Hint(text, delay, action)
    if imgui.IsItemHovered() then
        if go_hint == nil then go_hint = os.clock() + (delay and delay or 0.0) end
        local alpha = (os.clock() - go_hint) * 5
        if os.clock() >= go_hint then
            imgui.PushStyleVar(imgui.StyleVar.WindowPadding, imgui.ImVec2(10, 10))
            imgui.PushStyleVar(imgui.StyleVar.Alpha, (alpha <= 1.0 and alpha or 1.0))
                imgui.PushStyleColor(imgui.Col.PopupBg, imgui.ImVec4(0.11, 0.11, 0.11, 1.00))
                    imgui.BeginTooltip()
                    imgui.PushTextWrapPos(450)
                    imgui.TextColored(imgui.GetStyle().Colors[imgui.Col.ButtonHovered], u8' Подсказка:')
                    imgui.TextUnformatted(text)
                    if action ~= nil then
                        imgui.TextColored(imgui.GetStyle().Colors[imgui.Col.TextDisabled], '\n '..action)
                    end
                    if not imgui.IsItemVisible() and imgui.GetStyle().Alpha == 1.0 then go_hint = nil end
                    imgui.PopTextWrapPos()
                    imgui.EndTooltip()
                imgui.PopStyleColor()
            imgui.PopStyleVar(2)
        end
    end
end
 

chapo

tg/inst: @moujeek
Всефорумный модератор
9,097
12,127
Lua:
if imgui.Button("click") then
end
imgui.Tooltip("hello world")

function imgui.Tooltip(text)
   if imgui.IsItemHovered() then
      imgui.BeginTooltip()
      imgui.Text(text)
      imgui.EndTooltip()
   end
end
открою тебе секрет: код будет работать даже без if, так как иф там только для того что бы сделать дейтсвие, так как при клике Button возвращает не false, a true
 
Последнее редактирование:

Ninthmoon

Известный
Автор темы
464
130
открою тебе секрет: код будет работать даже без if, так как иф там только для того что бы сделать дейтсвие, так как при клике Button возвращает не false, a true
то есть imgui.Button можно использовать без if?
Я выделил те 2 строки только потому что без if then end кнопка не работала бы

Lua:
if imgui.Button('Button_name') then
    --что будет происходить после нажатия кнопки
end
 
Последнее редактирование: