GoJS画布事件监听

233 阅读2分钟

GoJS添加事件监听函数 addDiagramListener

GoJS的addDiagramListener函数可以监听画布的事件属性: 在创建画布的时候,添加事件属性监听

myDiagram.addDiagramListener("ObjectContextClicked",function (e, i) {
    console.log("e:", e);
});
myDiagram.addDiagramListener("event",function (e, i) {
    console.log("e:", e);
});

事件名:

  1. 用户交互事件

    • ObjectSingleClicked:图形对象(如节点或连线)被单击时触发。
    • ObjectDoubleClicked:图形对象被双击时触发。
    • ObjectContextClicked:图形对象被右键点击时触发。
    • BackgroundSingleClicked:图表背景被单击时触发。
    • BackgroundDoubleClicked:图表背景被双击时触发。
    • BackgroundContextClicked:图表背景被右键点击时触发。
  2. 选择事件

    • ChangingSelection:选择集合即将改变之前触发。
    • ChangedSelection:选择集合已经改变之后触发。
  3. 剪切板事件

    • ClipboardChanged:零部件已被复制到剪贴板上时触发。
    • ClipboardPasted:零部件已从剪贴板粘贴到图表中时触发。
  4. 布局和动画事件

    • AnimationStarting:图表动画开始之前触发。
    • AnimationFinished:图表动画完成之后触发。
    • InitialLayoutCompleted:图表初始化布局完成后触发。
    • LayoutCompleted:图表布局完成后触发。
  5. 图表状态变化事件

    • DocumentBoundsChanged:图表中各零部件的面积或边界发生变化时触发。
    • ViewportBoundsChanged:图表的视图范围(即用户当前可见的区域)发生变化时触发。
  6. 特定操作事件

    • LinkDrawn:用户通过LinkingTool创建新链接时触发。
    • LinkRelinked:用户通过RelinkingTool或DraggingTool重新连接现有链接时触发。
    • LinkReshaped:用户通过LinkReshapingTool调整链接路径时触发。
    • SelectionCopied:选中的图表元素被复制时触发。
    • SelectionMoved:选中的图表元素被移动时触发。
    • SelectionDeleting:选中的图表元素即将被删除时触发。
    • SelectionDeleted:选中的图表元素已被删除后触发。
  7. 其他事件

    • GainedFocus:图表获得键盘焦点时触发。
    • LostFocus:图表失去键盘焦点时触发。
    • Modified:图表的修改状态发生变化时触发(例如,当用户更改了图表的内容但尚未保存时)。