繁体   English   中英

gojs - 选择时更改节点的颜色,但 go 否则会恢复原始颜色?

gojs - Change color of node when selected, but go back to original color otherwise?

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

这是我正在使用的节点模板:

      $(go.Node, "Auto",
    {
      deletable: false,
      selectionAdorned: false
    },
    new go.Binding("location", "loc", go.Point.parse).makeTwoWay(go.Point.stringify),
    $(go.Shape, "Terminator",
      {
        fill: "#f8da07", strokeWidth: 2, minSize: new go.Size(90, 40), portId: "", cursor: "pointer", stroke: '#000000', fromLinkable: true,
        toLinkable: false, fromLinkableSelfNode: false, toLinkableSelfNode: false, fromLinkableDuplicates: false, toLinkableDuplicates: false, fromMaxLinks: 1
      },
      new go.Binding("figure"),
      new go.Binding("fill", "color"),
      new go.Binding("fill", "isSelected", function(sel) {
        return sel ? "#e1e1e1" : [selfColor];
      }).ofObject()),
    {
      click: (e, obj) => {
        clickNode(e, obj);
      }
    },
    $(go.TextBlock,
      {
        stroke: "#000000", margin: 4, editable: false, font: "bold 12pt sans-serif", isMultiline: true
      },
      new go.Binding("text").makeTwoWay())
  );

您可以看到节点的默认颜色是#f8da07,但它实际上是由节点自身颜色属性用“new go.Binding("fill", "color")" 行写入的。

事实上,我无法知道哪个是当前选择的节点的颜色代码。

当我 select 时,我希望能够将节点的颜色更改为“#e1e1e1”,但我也希望它在没有时更改回旧颜色 - (不是“#f8da07”)。

有没有合适的方法来做到这一点?

任何帮助将不胜感激! 谢谢

1 个回复
$(go.Shape,
  { fill: "#f8da07" },  // default color
  new go.Binding("fill", "color"),
  new go.Binding("fill", "isSelected", function(sel, shape) {
    return sel ? "#e1e1e1" : shape.part.data.color || "#f8da07";
  }).ofObject()),
1 GoJS:如何更改节点填充颜色?

我正在使用GoJS制作图表。 我的图表配置(来自官方文档的示例): 我以以下方式创建节点: 现在,我需要以编程方式更改特定节点的填充颜色。 我正在尝试以下代码: 但是之后,我的图表不会显示。 并且控制台中没有错误。 我应该为节点设置新形状吗? 或者我该怎么做 ...

2 多次点击时,Swift Spritekit会更改节点的颜色

我试图让它根据数组中的颜色更改菜单上节点的填充颜色。 我有一个填充有4种颜色的数组,当我按下节点时,它应该根据位置过滤这些颜色。 因此,当我点击该节点一次后,它应该将颜色更改为红色,如果再次点击它,它将更改为绿色,另一次点击会将其更改为紫色,然后再次更改为蓝色 但是,这只读取一个 ...

4 EXTJS:更改节点的颜色

我需要能够更改树面板中节点的颜色。 我以为这很简单,但是我很难找到任何东西。 谢谢 ...

2010-07-27 17:42:44 2 5011   extjs
5 根据状态更改节点颜色

我正在研究下面的小提琴- var d3cola = cola.d3adaptor().convergenceThreshold(0.1); var width = 960, height = 700; var outer = d3.select("body").append("s ...

6 "gojs - 查找节点级别"

我有一个 GoJS 画布,用户可以根据自己的意愿在其中创建,应用程序需要按顺序处理节点。 所以通过 GoJS 文档,有gojsNodeObject.findTreeLevel() ,它返回图中节点的级别。 到目前为止它工作得很好,但最近它引起了一个问题。 请在小提琴http://jsfiddle ...

7 Gojs-在屏幕上选择鼠标时突出显示节点

我正在使用https://www.npmjs.com/package/@simonwep/selection-js库在屏幕上选择一个区域。 我有一个Gojs地图,我想在其中突出显示用鼠标选择的区域内的所有节点。 问题是我从Gojs获得的坐标值没有意义。 我在地图的左上角有一个节点, ...

9 D3.js Tree:点击它时如何更改节点颜色?

我想在点击它时更改节点的颜色。 它应该在“点击”功能中设置。 但是,在click函数中,“d”是节点元素,但是要更改节点颜色,我必须选择“circle”元素,该元素使用nodeEnter.append(“circle”)附加到节点。 我怎样才能实现它? html文件: j ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM