提问人:Hengbin Zheng 提问时间:11/17/2023 更新时间:11/17/2023 访问量:14
在GoJS中,如何设置一个节点在点击任何前一个节点的按钮时可见?
In GoJS how can I set a node visible when clicking button of it's any preceding node?
问:
我想实现一个功能:当我单击节点 A 中的按钮时,将出现所有具有 A 链接的节点。我尝试过 TreeExpanderButton,但效果不是我预期的。
我将用一个例子来说明我遇到的问题:
myDiagram.nodeTemplate =
$(go.Node, "Spot",
$(go.Panel, "Auto",
$(go.Shape, "Rectangle",
{ fill: "gold" }),
$(go.TextBlock, "Click small button\nto collapse/expand subtree",
{ margin: 5 },
new go.Binding("text", "key"))
),
$("TreeExpanderButton",
{ alignment: go.Spot.Bottom, alignmentFocus: go.Spot.Top },
{ visible: true })
);
myDiagram.layout = $(go.TreeLayout, { angle: 90 });
myDiagram.model = new go.GraphLinksModel(
[ { key: 1 },
{ key: 2 },
{ key: 3 },
],
[ { from: 1, to: 3 },
{ from: 2, to: 3 }] );
myDiagram.nodes.each(function(n) {
n.wasTreeExpanded = false;
n.isTreeExpanded = false;
})
上面是我的图表的结构。当我单击节点 1 的 TreeExpanderButton 时,将出现节点 3。但是当我单击节点 2 的此类按钮时,节点 3 将不会出现。我想这是因为节点 3 在树结构中是节点 1 的子节点,但我希望在单击任何前一个节点的按钮时出现一个节点。我怎样才能实现这个目标?
答: 暂无答案
评论