JGraph起源于Swing Jcomponent类,它可以使用著名的图形范例(paradigm of graph)来用相关的对象表示网络。JGraph之所以可以完成这个任务是由于它可以:
作为一个简单的例子,清单A包括了创建一个弹出式窗口(该窗口包含一幅用默认设置下JGraph所创建的图形)的代码。
JGraph对象,如清单A所示,从GraphModel对象中得到一个数据模型并把它扩展为Jcomponent对象。另外两个重要的对象分别是GraphModel和GraphUI。前者存储图形数据,后者定义了图形的外观。在MVC模型中,JGraph类是控制器,而GraphModel是模型、GraphUI是视图。
在清单A中还有一个DefaultGraphModel对象,该对象存储了关于关系图(relationship diagram)的数据,它被JGraph对象作为GraphModel对象来调用。JGraph对象使用BasicGraphUI对象作为它的外观。最后,Jscrollpane对象把JGraph对象最为它的组件,在弹出式窗口中显示关系图。
你还可以对图形进行常规的操作(尽管这个图形看上去好像只是专门用来演示Jgraph的)。如果你没有重载JGraph对象的默认属性,那么你可以任何JGraph对象上进行表A所列举的操作。
表A:操作及操作结果
单击某个顶点或者边线 | 选择该顶点或者边线 |
双击某个顶点或者边线 | 编辑该顶点或者边线上的文本 |
拖拽某个顶点 | 移动该顶点以及与之相连的边线 |
拖拽顶点的侧边 | 改变该顶点的尺寸 |
拖拽边线的终点 | 把相连的顶点和边线分开 |
按下[Alt]键后单击 | 强制进行选取框选择 |
按下[Shift]或者[Ctrl]键后的单击 | 切换式选择 |
按下[Shift]键后拖拽选定的对象 | 强制把选定对象向拖拽方向移动 |
按下[Ctrl]键后拖拽选定的对象 | 克隆选定的对象 |
创建你的第一幅图形