使用“dear imgui”具有相同按钮文本的按钮

alf*_*tta 3 c++ user-interface widget

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

小智 7

是的。

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

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

例如: ImGui::Button("Press##1") 和 ImGui::Button("Press##2") 都将注册,而两者都只有“按下”按钮。

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