fork download
  1. Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
  2. at com.mxgraph.swing.handler.mxVertexHandler.createHandles(mxVertexHandler.java:106)
  3. at com.mxgraph.swing.handler.mxCellHandler.refresh(mxCellHandler.java:95)
  4. at com.mxgraph.swing.handler.mxCellHandler.<init>(mxCellHandler.java:78)
  5. at com.mxgraph.swing.handler.mxVertexHandler.<init>(mxVertexHandler.java:63)
  6. at com.mxgraph.swing.mxGraphComponent.createHandler(mxGraphComponent.java:2839)
  7. at com.mxgraph.swing.handler.mxSelectionCellsHandler.refresh(mxSelectionCellsHandler.java:393)
  8. at com.mxgraph.swing.handler.mxSelectionCellsHandler$1.invoke(mxSelectionCellsHandler.java:87)
  9. at com.mxgraph.util.mxEventSource.fireEvent(mxEventSource.java:179)
  10. at com.mxgraph.util.mxEventSource.fireEvent(mxEventSource.java:151)
  11. at com.mxgraph.view.mxGraphSelectionModel$mxSelectionChange.execute(mxGraphSelectionModel.java:389)
  12. at com.mxgraph.view.mxGraphSelectionModel.changeSelection(mxGraphSelectionModel.java:301)
  13. at com.mxgraph.view.mxGraphSelectionModel.setCells(mxGraphSelectionModel.java:188)
  14. at com.mxgraph.view.mxGraphSelectionModel.setCell(mxGraphSelectionModel.java:158)
  15. at com.mxgraph.view.mxGraph.setSelectionCell(mxGraph.java:7488)
  16. at com.mxgraph.swing.mxGraphComponent.selectCellForEvent(mxGraphComponent.java:2082)
  17. at com.mxgraph.swing.handler.mxGraphHandler.mousePressed(mxGraphHandler.java:849)
  18. at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:280)
  19. at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:279)
  20. at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:279)
  21. at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:279)
  22. at java.awt.Component.processMouseEvent(Component.java:6502)
  23. at javax.swing.JComponent.processMouseEvent(JComponent.java:3312)
  24. at java.awt.Component.processEvent(Component.java:6270)
  25. at java.awt.Container.processEvent(Container.java:2229)
  26. at java.awt.Component.dispatchEventImpl(Component.java:4861)
  27. at java.awt.Container.dispatchEventImpl(Container.java:2287)
  28. at java.awt.Component.dispatchEvent(Component.java:4687)
  29. at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
  30. at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4489)
  31. at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
  32. at java.awt.Container.dispatchEventImpl(Container.java:2273)
  33. at java.awt.Window.dispatchEventImpl(Window.java:2719)
  34. at java.awt.Component.dispatchEvent(Component.java:4687)
  35. at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:729)
  36. at java.awt.EventQueue.access$200(EventQueue.java:103)
  37. at java.awt.EventQueue$3.run(EventQueue.java:688)
  38. at java.awt.EventQueue$3.run(EventQueue.java:686)
  39. at java.security.AccessController.doPrivileged(Native Method)
  40. at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
  41. at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
  42. at java.awt.EventQueue$4.run(EventQueue.java:702)
  43. at java.awt.EventQueue$4.run(EventQueue.java:700)
  44. at java.security.AccessController.doPrivileged(Native Method)
  45. at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
  46. at java.awt.EventQueue.dispatchEvent(EventQueue.java:699)
  47. at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
  48. at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
  49. at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
  50. at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
  51. at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
  52. at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
  53.  
  54. Sprawdzałem w ktorym momencie sie psuje i jest od razu po kliknieciu.
  55. Listenery sa dodawane w taki sposob:
  56.  
  57. protected void installListeners() {
  58.  
  59. graphComponent.getGraphControl().addMouseListener(new MouseAdapter() {
  60.  
  61. @Override
  62. public void mouseReleased(MouseEvent e) {
  63. if (e.getButton() == MouseEvent.BUTTON3)
  64. showPopupMenu(e);
  65. }
  66. });
  67.  
  68. }
  69. a wszystko to lezy na panelu:
  70. graphComponent = new mxGraphComponent(graph);
  71. add(graphComponent, BorderLayout.CENTER);
  72. tu jest link do tego handelra:
  73. https://g...content-available-to-author-only...b.com/jgraph/jgraphx/blob/master/src/com/mxgraph/swing/handler/mxVertexHandler.java
Not running #stdin #stdout 0s 0KB
stdin
Standard input is empty
stdout
Standard output is empty