#include "UI_Layout.hpp" // UI布局 void UI_Layout() { // 配置窗口绘制位置为Dear ImGUI生成的主窗口 const ImGuiViewport *viewport = ImGui::GetMainViewport(); // 下一个窗体绘制到主窗体位置 ImGui::SetNextWindowPos(viewport->WorkPos); // 下一个窗体绘制为主窗体大小 ImGui::SetNextWindowSize(viewport->WorkSize); // 设置下一个焦点窗体为主窗体 ImGui::SetNextWindowViewport(viewport->ID); ImGui::PushStyleVar(ImGuiStyleVar_WindowRounding, 0.0f); // 绘制风格栈压入窗口圆角为0 ImGui::PushStyleVar(ImGuiStyleVar_WindowBorderSize, 0.0f); // 绘制风格栈压入窗体边框宽度为0 // 窗体选项配置 ImGuiWindowFlags window_flags = ImGuiWindowFlags_None; // 设置窗体相关属性,无标题栏,无折叠标志,不可重塑大小,不可移动 window_flags |= ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoCollapse | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoMove; // 设置窗体相关属性,收到焦点时不移动到前台,禁用焦点事件 window_flags |= ImGuiWindowFlags_NoBringToFrontOnFocus | ImGuiWindowFlags_NoNavFocus; // 设置窗体相关属性,不允许停靠 window_flags |= ImGuiWindowFlags_NoDocking; ImGui::Begin("Main Panel", NULL, window_flags); { // 退出绘制风格栈中的设置项 ImGui::PopStyleVar(2); } ImGui::End(); ImGui::ShowDemoWindow(nullptr); }