imgui ツリーノードの作成 – FlyWithLua

2023年2月17日

クリックすると、下にテキストが表示される。

-- imgui only works inside a floating window, so we need to create one first:
tree_node_wnd = float_wnd_create(250, 50, 1, true)
float_wnd_set_title(tree_node_wnd, "imgui Demo")
float_wnd_set_imgui_builder(tree_node_wnd, "tree_node_demo")
float_wnd_set_onclose(tree_node_wnd, "closed_demo")

open_text = ""  --最初は表示しない。

function tree_node_demo(wnd, x, y)
    if imgui.TreeNode("Styling Widgets") then
        -- 上のテキストはラベルになる
        -- ノードが現在開いている場合、関数は true を返すため、if ステートメントは、
        --ノードが現在展開されている場合にのみ、含まれているウィジェットが描画されるようにします。

        -- 描画カーソルの位置を操作することで、ウィジェットを任意の座標に配置することができます。
        local open_text = "Text opened in Tree Node"    --表示するテキスト
        imgui.SetCursorPos(50, imgui.GetCursorPosY())   --テキストを表示する位置
        imgui.TextUnformatted(open_text)    --テキストを表示
    end
end

function closed_demo(wnd)
    -- Tこの関数は、ユーザーがウィンドウを閉じるときに呼び出されます。 
    -- ウィンドウが既に破棄されているため、この関数では imgui 関数の描画または呼び出しは許可されない。
end