2014年5月23日金曜日

JGraphXでグリッドを表示する

JGraphXでグリッドを表示するには以下のメソッドを使用します。
  • mxGraph.setGridSize:グリッドのサイズ
  • mxGraphComponent.setGridVisible:グリッドの表示指定
  • mxGraphComponent.setGridColor:グリッドの色
  • mxGraphComponent.setGridStyle:グリッドのスタイル設定
    • mxGraphComponent.GRID_STYLE_DOT:点のグリッドスタイル
    • mxGraphComponent.GRID_STYLE_CROSS:十字のグリッドスタイル
    • mxGraphComponent.GRID_STYLE_LINE:線のグリッドスタイル
    • mxGraphComponent.GRID_STYLE_DASHED:点線のグリッドスタイル
サンプルコード
import java.awt.*
import javax.swing.*
import groovy.swing.*
import com.mxgraph.swing.*
import com.mxgraph.view.*
import com.mxgraph.util.mxConstants

def graph = new mxGraph()
graph.setGridSize(10)
def mxgc = new mxGraphComponent(graph)
mxgc.setGridVisible(true)
mxgc.setGridColor(new Color(0x77, 0x99, 0xdd))
//mxgc.setGridStyle(mxgc.GRID_STYLE_DOT)
//mxgc.setGridStyle(mxgc.GRID_STYLE_CROSS)
//mxgc.setGridStyle(mxgc.GRID_STYLE_LINE)
mxgc.setGridStyle(mxgc.GRID_STYLE_DASHED)

sb = new SwingBuilder()
def frm = sb.frame(
  title: "JGraphX - grid",
  visible: true,
  size: [150, 200],
  resizable: true,
  contentPane: mxgc,
  defaultCloseOperation: WindowConstants.EXIT_ON_CLOSE
){

  parent = graph.getDefaultParent()
  graph.model.beginUpdate()
  try
  {
    def v1 = graph.insertVertex(parent, null, "処理1",
      20, 20, 100, 30)
    def v2 = graph.insertVertex(parent, null, "処理2",
      20, 90, 100, 30)

    graph.insertEdge(parent, null, "正常終了", v1, v2)

  }
  finally
  {
    graph.model.endUpdate()
  }
}
実行結果

関連情報
JGraphxのダウンロードページ

0 件のコメント:

コメントを投稿