mirror of
https://github.com/ocornut/imgui.git
synced 2024-11-27 16:29:02 +08:00
Created Tips (markdown)
parent
7ee0714dd1
commit
7545642056
15
Tips.md
Normal file
15
Tips.md
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
**Tip: use Begin/BeginChild to put yourself into the context of another window prior or after outputting to it**<br>
|
||||||
|
https://github.com/ocornut/imgui/issues/270
|
||||||
|
|
||||||
|
An interesting trick that isn't obvious is that you can use Begin() just to put yourself into the context of that window. So here I want to react to the user inputting an address to scroll to, I use BeginChild() again on the child that I've already drawn so I can use SetScrollFromPosY() on it.
|
||||||
|
|
||||||
|
```
|
||||||
|
ImGui::BeginChild("##scrolling", ImVec2(0, -ImGui::GetItemsLineHeightWithSpacing()));
|
||||||
|
// ...(draw main content)
|
||||||
|
ImGui::EndChild();
|
||||||
|
|
||||||
|
// And then much later in the main window, get back into child context to change scrolling offset
|
||||||
|
ImGui::BeginChild("##scrolling");
|
||||||
|
ImGui::SetScrollFromPosY(ImGui::GetCursorStartPos().y + (goto_addr / Rows) * line_height);
|
||||||
|
ImGui::End();
|
||||||
|
```
|
Loading…
Reference in New Issue
Block a user