使用“亲爱的imgui”使用相同按钮文本的按钮

问题描述 投票:1回答:1

是否可以使用“亲爱的imgui”使用相同的按钮文本的两个按钮? 因为生成两个或更多ImGui :: Button(“PRESS”)将导致只有第一个对选择作出反应的情况(在GCC / Win64 / MinGW上测试)

c++ user-interface widget
1个回答
2
投票

是。

只有两个ImGui :: Button(“Press”)对象中的第一个将注册的原因是 - 默认情况下--ImGui使用按钮的文本作为其标识符。

您可以通过在按钮周围使用PushID()和PopID()来创建新的ID堆栈,或者通过在按钮文本后面添加“##”向按钮添加其他信息来避免这种情况。

例如:ImGui :: Button(“按## 1”)和ImGui :: Button(“按## 2”)将同时注册,同时按钮上只有“按下”。

“##”之后的所有文本仅用于设置该按钮的标识符,不会显示。

© www.soinside.com 2019 - 2024. All rights reserved.