Я работаю над кодом, который показывает полный график и использует алгоритм Дейкстры, чтобы показать кратчайший путь.Но проблема в том, что он не просто визуализирует вещи, они все редактируемые и интерактивные.
Мне просто нужно визуализировать «график», а не: перемещать, редактировать, добавлять или создавать какие-либо взаимодействия с узлами и / или ребрами.
В этом простом Jframe ямы пытались устранить эти взаимодействия.Но у меня не получается:
public class Actions extends JFrame {
private mxGraph graph;
private mxGraphComponent graphComponent;
public Actions() {
super("JGraph - labyrinth");
initGUI();
}
private void initGUI() {
setSize(800,600);
setLocationRelativeTo(null);
graph = new mxGraph();
graphComponent = new mxGraphComponent(graph);
graphComponent.setPreferredSize(new Dimension(400, 400));
getContentPane().add(graphComponent);
Object parent = graph.getDefaultParent();
graph.getModel().beginUpdate();
graph.insertVertex(parent, null, "TEST", 30, 80, 100, 50);
graph.getModel().endUpdate();
}
}
Так что эта программа генерирует узел со строкой "TEST" в качестве имени.Проблема в том, что я могу взаимодействовать с этим единственным узлом, я могу перемещать его повсюду, я могу создавать много новых ребер, как я хочу, из узла "TEST".И я не хочу этого, я просто хочу визуализировать мой график, не взаимодействовать с ним.
EDIT : мне удалось сделать узел неподвижным, но я все еще могу создавать / взаимодействовать с нимего края.Это код, который я добавил:
graph.setCellsLocked(true);
graph.setVertexLabelsMovable(false);
graph.setEdgeLabelsMovable(false);