Закрытие окна imgui

W1ll04eison

Участник
Автор темы
328
19
Версия MoonLoader
.026-beta
Как на ESC закрыть активный диалог imgui?
 
Решение
А если у меня открыто первое imgui окно, по нажатию на кнопку в первом окне, открывается второе окно, как мне сделать так шоб, если я нажимаю один раз ESC, то закрывается второе окно, если нажму еще раз, то закрывается первое

@darksoor
Я за тебя должен писать что-ли простейшее условие? Ладно.....
Lua:
local keys = require 'vkeys'
-- win_1.v - first window
-- win_2.v - two window

function onWindowMessage(msg, wparam, lparam)
    if msg == 0x100 or msg == 0x101 then
        if (wparam == keys.VK_ESCAPE and (win_1.v or win_2.v)) and not isPauseMenuActive() then
            consumeWindowMessage(true, false)
            if msg == 0x101 then
                if win_2.v then
                   win_2.v = false; win_1.v = true...

W1ll04eison

Участник
Автор темы
328
19
Lua:
local keys = require 'vkeys'

function onWindowMessage(msg, wparam, lparam)
    if msg == 0x100 or msg == 0x101 then
        if (wparam == keys.VK_ESCAPE and window.v) and not isPauseMenuActive() then
            consumeWindowMessage(true, false)
            if msg == 0x101 then
                window.v = false
            end
        end
    end
end
А если у меня открыто первое imgui окно, по нажатию на кнопку в первом окне, открывается второе окно, как мне сделать так шоб, если я нажимаю один раз ESC, то закрывается второе окно, если нажму еще раз, то закрывается первое

@darksoor
 

darksoor

Известный
674
353
А если у меня открыто первое imgui окно, по нажатию на кнопку в первом окне, открывается второе окно, как мне сделать так шоб, если я нажимаю один раз ESC, то закрывается второе окно, если нажму еще раз, то закрывается первое

@darksoor
Я за тебя должен писать что-ли простейшее условие? Ладно.....
Lua:
local keys = require 'vkeys'
-- win_1.v - first window
-- win_2.v - two window

function onWindowMessage(msg, wparam, lparam)
    if msg == 0x100 or msg == 0x101 then
        if (wparam == keys.VK_ESCAPE and (win_1.v or win_2.v)) and not isPauseMenuActive() then
            consumeWindowMessage(true, false)
            if msg == 0x101 then
                if win_2.v then
                   win_2.v = false; win_1.v = true
                else win_1.v = false end
            end
        end
    end
end
 
  • Нравится
Реакции: tyukapa

W1ll04eison

Участник
Автор темы
328
19
Я за тебя должен писать что-ли простейшее условие? Ладно.....
Lua:
local keys = require 'vkeys'
-- win_1.v - first window
-- win_2.v - two window

function onWindowMessage(msg, wparam, lparam)
    if msg == 0x100 or msg == 0x101 then
        if (wparam == keys.VK_ESCAPE and (win_1.v or win_2.v)) and not isPauseMenuActive() then
            consumeWindowMessage(true, false)
            if msg == 0x101 then
                if win_2.v then
                   win_2.v = false; win_1.v = true
                else win_1.v = false end
            end
        end
    end
end
Спасибо, мне просто нужен был пример, ибо у меня есть основное окно и много окон которые включаются от кнопки на основном окне