Options
Public/Protected
  • Public
  • Public/Protected
  • All
Menu

GoJS API 文档

Hierarchy

  • 图表事件

图表事件是比 输入事件更抽象的事件. 它们是在 图表 类上触发的. 可以通过调用Diagram.addDiagramListener. 在图表上注册一个图表侦听器来接收此类事件.调用侦听器函数时,将传递一个图表事件实例. 使用name 属性确定它是哪种图表事件. 图表 属性引用图表, 您可以从中获得附加信息,例如Diagram.lastInput,反过来有提供了 例如 InputEvent.documentPoint 之类的信息,这些信息可能与此类图表事件相关.

subjectparameter 可选地提供有关关系图表事件的附加信息. subject 是Part 零部件的集合, 也可以是单个对象, 如节点中的Link 链接 或者 GraphObject 图形对象 . 这取决于它是哪种图表事件.

有些图表事件,如 "ObjectSingleClicked" 或"BackgroundDoubleClicked" 通常与 输入事件关联. 有些图表事件,如"SelectionMoved" 或 "PartRotated" 与Tool-handled gestures 或者CommandHandler 操作的结果相关联. 有些图表事件根本不必与任何输入事件相关联,例如 "ViewportBoundsChanged",这可能由于程序的直接更改 Diagram.positionDiagram.scale 属性而触发事件.

在整个关系图的状态稳定下来之前,可以调用事务期间发生的图表事件. 这通常意味着此类事件发生在布局之前,因此节点可能没有它们的最终位置, 链接可能没有最终的路由, Diagram.documentBoundsDiagram.viewportBounds 可能还没有更新. 这些事件可能对图表进行额外的更改,从而可能导致额外的副作用.

发生在事务外部的事件,如果有修改需要您手动启动和提交事务. 但是,有些图表事件不允许您对图表或模型进行任何更改.

当前定义的图表事件名称包括:

Index

构造函数

constructor

  • DiagramEvent类构造函数生成一个空的DiagramEvent.你不需要调用这个构造函数.但是如果您这样做了,您必须首先将diagram设置为Diagram,然后才能进行其他使用.

    Returns DiagramEvent

属性

diagram : Diagram

  • 获取与事件关联的图表.

name : string

  • 获取或设置图表事件类型的名称.此属性应始终设置为可识别的名称列表之一,如图表事件文档中所列.

parameter : any

  • 获取或设置描述对图表事件subject更改的可选对象.此属性默认为null.

subject : any

  • 获取或设置作为图表事件subject的可选对象.此属性默认为null.

加入 GoJS 交流群
GoJS 交流群 (769862113)