imgui

CanslerW

Участник
Автор темы
54
1
Версия MoonLoader
.025-beta
HSiHb_3FAyo.jpg

Когда открываю меню, у меня пустой, как сделать чтобы справа был текст?Или как сделать чтобы при открытие сразу был уже открыт один из бегинчилд Спасибо за будущий ответ.
 
Решение
а че классно так, ничего не напоминает?

CanslerW

Участник
Автор темы
54
1
Lua:
require "lib.moonloader"
local imgui = require 'imgui'
local encoding = require 'encoding'
local main_window_state = imgui.ImBool(false)
encoding.default = 'CP1251'
u8 = encoding.UTF8

function main()
    if not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
    sampRegisterChatCommand("test", function() main_window_state.v = not main_window_state.v end)
    while true do
        wait(0)
        imgui.Process = main_window_state.v
    end
end

function imgui.OnDrawFrame()
    if main_window_state.v then
        local sw, sh = getScreenResolution()
        imgui.SetNextWindowPos(imgui.ImVec2(sw / 2, sh / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.SetNextWindowSize(imgui.ImVec2(1070, 500), imgui.Cond.FirstUseEver)
        imgui.Begin(u8"Test script", main_window_state)
        imgui.BeginChild("child", imgui.ImVec2(255, 450), true)
        if imgui.Button(u8"Основные", imgui.ImVec2(-1, 100)) then menu = 1 end
        if imgui.Button(u8"Другое", imgui.ImVec2(-1, 100)) then menu = 2 end
        if imgui.Button(u8"Для авто", imgui.ImVec2(-1, 100)) then menu = 3 end
        if imgui.Button(u8"Читики", imgui.ImVec2(-1, 100)) then menu = 4 end
        imgui.EndChild()
        imgui.SameLine()
        if menu == 1 then
            imgui.BeginChild("child2", imgui.ImVec2(780, 450), true)
            imgui.Text("1")
            imgui.EndChild()
        end
        imgui.SameLine()
        if menu == 2 then
            imgui.BeginChild("child2", imgui.ImVec2(780, 450), true)
            imgui.Text("2")
            imgui.EndChild()
        end
        imgui.SameLine()
        if menu == 3 then
            imgui.BeginChild("child2", imgui.ImVec2(780, 450), true)
            imgui.Text("3")
            imgui.EndChild()
        end
        imgui.SameLine()
        if menu == 4 then
            imgui.BeginChild("child2", imgui.ImVec2(780, 450), true)
            imgui.Text("4")
            imgui.EndChild()
        end
        imgui.End()
    end
end
 

Tema05

Известный
1,441
402
Lua:
require "lib.moonloader"
local imgui = require 'imgui'
local encoding = require 'encoding'
local main_window_state = imgui.ImBool(false)
encoding.default = 'CP1251'
u8 = encoding.UTF8

function main()
    if not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
    sampRegisterChatCommand("test", function() main_window_state.v = not main_window_state.v end)
    while true do
        wait(0)
        imgui.Process = main_window_state.v
    end
end

function imgui.OnDrawFrame()
    if main_window_state.v then
        local sw, sh = getScreenResolution()
        imgui.SetNextWindowPos(imgui.ImVec2(sw / 2, sh / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.SetNextWindowSize(imgui.ImVec2(1070, 500), imgui.Cond.FirstUseEver)
        imgui.Begin(u8"Test script", main_window_state)
        imgui.BeginChild("child", imgui.ImVec2(255, 450), true)
        if imgui.Button(u8"Основные", imgui.ImVec2(-1, 100)) then menu = 1 end
        if imgui.Button(u8"Другое", imgui.ImVec2(-1, 100)) then menu = 2 end
        if imgui.Button(u8"Для авто", imgui.ImVec2(-1, 100)) then menu = 3 end
        if imgui.Button(u8"Читики", imgui.ImVec2(-1, 100)) then menu = 4 end
        imgui.EndChild()
        imgui.SameLine()
        if menu == 1 then
            imgui.BeginChild("child2", imgui.ImVec2(780, 450), true)
            imgui.Text("1")
            imgui.EndChild()
        end
        imgui.SameLine()
        if menu == 2 then
            imgui.BeginChild("child2", imgui.ImVec2(780, 450), true)
            imgui.Text("2")
            imgui.EndChild()
        end
        imgui.SameLine()
        if menu == 3 then
            imgui.BeginChild("child2", imgui.ImVec2(780, 450), true)
            imgui.Text("3")
            imgui.EndChild()
        end
        imgui.SameLine()
        if menu == 4 then
            imgui.BeginChild("child2", imgui.ImVec2(780, 450), true)
            imgui.Text("4")
            imgui.EndChild()
        end
        imgui.End()
    end
end
Названия одинаковые.
 

Dmitriy Makarov

25.05.2021
Проверенный
2,484
1,114
А еще лучше ставь перед названиями ## и проблем вообще быть не должно
imgui.BeginChild("##child") Типа так. Можно одинаковые названия так же делать, если не ошибаюсь, но не забудь эти 2 символа.
 

Tema05

Известный
1,441
402
А еще лучше ставь перед названиями ## и проблем вообще быть не должно
imgui.BeginChild("##child") Типа так. Можно одинаковые названия так же делать, если не ошибаюсь, но не забудь эти 2 символа.
не нельзя. эти символы просто убирают текст но значение 1 и тоже
 

MaksQ

Известный
967
817
а че классно так, ничего не напоминает?
 

CanslerW

Участник
Автор темы
54
1
а че классно так, ничего не напоминает?
А вот так)
 

Fott

Простреленный
3,446
2,307
а че классно так, ничего не напоминает?
Ты скинул сюда тему на свой скрипт который в luac ,пиздец помог рял
 

MaksQ

Известный
967
817