参考资料: https://github.com/ocornut/imgui
ImGui::Begin()
参数1:name,相当于窗口的id,是独一无二的
参数2:p_open,如果设置这个参数,窗口的右上角就会出现一个X按钮来执行关闭窗口的功能。这个参数和X按钮绑定,当X按钮被按下时,p_open被设为false
参数3:flags,这个参数的类型实际上是int,用来指示当前窗口的某个feature是否应该激活
如何使用window_flags控制窗口的feature
原理探寻:
例如demo中的window options选项中,可以选择一个window是否有menu
下图是No menu的情况
下图是有menu的情况
在imgui_demo.cpp中搜索“menu”关键字,可以找到:
由此可见,一个窗口的feature是由与这个窗口对应的begin函数中传入的window_flags参数来决定的;把window_flags这个参数看作一个二进制数,这个二进制数的每一位的0/1就是来决定某种这个窗口的feature是否生效的布尔值。
使用方法:
通过BeginMenuBar()和BeginMenu()来分别定制顶部菜单栏和对应的下拉菜单栏的内容;
注意任意的beginXXX都要对应一个endXXX
上述代码运行效果如下: