如何在 giu imgui 库中创建树形网格?
Posted
技术标签:
【中文标题】如何在 giu imgui 库中创建树形网格?【英文标题】:How to create tree grid in giu imgui library? 【发布时间】:2021-05-25 08:13:44 【问题描述】:我正在使用giu,这是 imgui 的 Golang 端口,
我需要这样的树形网格:
图片可以在imgui找到,但是我在仓库中没有找到实现,我试过这个:
package main
import (
"github.com/AllenDang/giu"
"github.com/AllenDang/imgui-go"
)
func loop()
row1 := giu.TableRow(
giu.TreeNode(`parent`).Layout(
giu.TableRow(
giu.TreeNode(`child`),
giu.Label(`ch1`),
giu.Label(`ch2`),
),
),
giu.Label(`p1`),
giu.Label(`p2`),
)
giu.SingleWindow(`win`).Layout(
giu.Table(`table`).Columns(
giu.TableColumn(`Column_1`),
giu.TableColumn(`Column_2`),
giu.TableColumn(`Column_3`),
).Rows(row1),
)
func main()
wnd := giu.NewMasterWindow("app", 400, 300, 0)
imgui.StyleColorsLight()
wnd.Run(loop)
但它看起来像:
如何解决?
【问题讨论】:
【参考方案1】:我不知道这是否有帮助,但如果你重新排序元素,它会像你想要的那样工作。
package main
import (
"github.com/AllenDang/giu"
"github.com/AllenDang/imgui-go"
)
func loop()
row1 := giu.TableRow(
giu.Label(`p1`),
giu.Label(`p2`),
giu.TreeNode(`parent`).Layout(
giu.TableRow(
giu.Label(`ch1`),
giu.Label(`ch2`),
giu.TreeNode(`child`),
),
),
)
giu.SingleWindow(`win`).Layout(
giu.Table(`table`).Columns(
giu.TableColumn(`Column_1`),
giu.TableColumn(`Column_2`),
giu.TableColumn(`Column_3`),
).Rows(row1),
)
func main()
wnd := giu.NewMasterWindow("app", 400, 300, 0, nil)
imgui.StyleColorsLight()
wnd.Run(loop)
【讨论】:
看起来很奇怪,但想法很有趣。以上是关于如何在 giu imgui 库中创建树形网格?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Angular 中创建像 Facebook 帖子这样的照片网格?