mxGraph按id获取顶点

时间:2015-09-19 01:42:34

标签: java jgraphx mxgraph

我按如下方式进行顶点插入:

String id = "1";
String value = "One";
Object v = graph.insertVertex(parent, id, value, 30, 30, 0, 0);

所以我需要通过id ...

来获取这个顶点
Object[] cells = graph.getChildVertices(graph.getDefaultParent());
for (Object c : cells)
{
    mxCell cell = (mxCell) c;
    System.out.println("id: " + cell.getId() + ", value: " + cell.getValue());
}
//result:
//id: 2, value: One

为什么id已经改变了? 我怎样才能正确得到顶点?

2 个答案:

答案 0 :(得分:2)

尝试mxGraphModel.getCell(String id)

答案 1 :(得分:0)

当您创建没有特定mxGraphModel的新mxGraph时,模型会自动创建两个节点。
“root”节点使用id =“0”,另一个节点作为根节点的子节点,id =“1”。此节点是使用graph.getDefaultParent()时通常获得的节点。
因此,当您尝试使用id =“1”插入节点时,模型已包含具有给定id的节点,因此它会创建一个新ID并插入节点。尝试使用不同的ID,它应该可以正常工作。

相关问题