- 778
- 360
- Версия MoonLoader
- .026-beta
Писал я, значит, свой скрипт, писал... И в определённый момент обнаружил, что одно из окон перестало прокручиваться.
До этого со скроллом всё было нормально, но после каких-то моих действий он работать перестал, даже область прокрутки, как видно по скроллбару, не изменяется. Несколько дней я пробовал делать всё, что приходило в голову, но проблему так и не решил. Подскажите, люди добрые, в каком месте я овощ, потому что я уже в отчаянии. Ниже прикрепляю рабочий прототип (его можно увидеть на фрапсе справа).
@#Northn прости за наглость, но ходят слухи, что ты создал mimgui. Помоги, пожалуйста
До этого со скроллом всё было нормально, но после каких-то моих действий он работать перестал, даже область прокрутки, как видно по скроллбару, не изменяется. Несколько дней я пробовал делать всё, что приходило в голову, но проблему так и не решил. Подскажите, люди добрые, в каком месте я овощ, потому что я уже в отчаянии. Ниже прикрепляю рабочий прототип (его можно увидеть на фрапсе справа).
Lua:
local imgui = require('mimgui')
local flags = imgui.WindowFlags
local ImVec2 = imgui.ImVec2
local ImVec4 = imgui.ImVec4
local sobesMessages = {}
for i = 1, 100 do
sobesMessages[i] = tostring(i)
end
local sobes_chat_frame = imgui.OnFrame(function() return isSampAvailable() end,
function(player)
imgui.SetNextWindowSize(ImVec2(450, 600))
imgui.Begin('window', nil, flags.NoResize + flags.NoTitleBar)
local p = imgui.GetWindowPos()
local s = imgui.GetWindowSize()
imgui.GetStyle().ChildRounding = 0
imgui.PushStyleColor(imgui.Col.ChildBg, ImVec4(0, 0, 0, 0))
imgui.SetCursorPos(ImVec2(5, 75))
imgui.PushStyleColor(imgui.Col.Border, ImVec4(1, 0, 0, 1))
imgui.BeginChild('message_area', ImVec2(440, 474), true)
local totalMessages = #sobesMessages
local messageY = 470
for i = totalMessages, 1, -1 do
local messageText = sobesMessages[i]
local textWidth = imgui.CalcTextSize(messageText).x
local messageHeight = textWidth > 330 and 45 or 30
if textWidth > 650 then
messageHeight = 65
end
local textWidth = textWidth > 310 and 310 or textWidth
local textWidth = textWidth < 45 and 45 or textWidth
messageY = messageY - messageHeight - 3.5
imgui.SetCursorPos(ImVec2(s.x - textWidth - 5, messageY))
imgui.GetStyle().ChildRounding = 10
imgui.PushStyleColor(imgui.Col.ChildBg, ImVec4(0.27, 0.2745, 0.282, 1))
imgui.BeginChild(tostring(i), ImVec2(textWidth, messageHeight), false)
imgui.SetCursorPosY(0)
imgui.SetWindowFontScale(1.15)
imgui.SetCursorPosX(imgui.GetCursorPosX() + 8.5)
imgui.TextWrapped(messageText)
imgui.EndChild()
imgui.SetWindowFontScale(1)
end
imgui.EndChild()
imgui.End()
end
)
@#Northn прости за наглость, но ходят слухи, что ты создал mimgui. Помоги, пожалуйста
Последнее редактирование: