str_id字符串标识符,与当前 ID 栈一起散列以区分此项或作用域。
popup_flags控制此操作的 ImGuiPopupFlags 选项;可用 | 组合兼容的标志位。
弹出窗口:打开/关闭函数。
OpenPopup() 将状态设为打开;可通过 ImGuiPopupFlags 指定打开选项。
非模态窗口可通过点击外部任意位置或按 ESCAPE 关闭。
CloseCurrentPopup() 在 BeginPopup()/EndPopup() 作用域内手动关闭窗口。
Selectable()/MenuItem() 激活时默认调用 CloseCurrentPopup()(待修复:需要一些选项)。
使用 ImGuiPopupFlags.NoOpenOverExistingPopup,可在同层级已有弹出窗口时避免再打开;等同于在 OpenPopup() 之前检查 !IsPopupOpen("", ImGuiPopupFlags.AnyPopupId)。
在 BeginPopup() 之后使用 IsWindowAppearing(),可判断窗口是否刚打开。
重要:为兼容接受 'int mouse_button = 1' 的旧 API,OpenPopupOnItemClick() 例外地将 flags 默认为 1(== ImGuiPopupFlags.MouseButtonRight)。调用以将弹出窗口标记为打开(不要每帧调用!)。
将弹出窗口标记为打开。