a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 應(yīng)用 > 編程開發(fā) > 正文

jgraph開發(fā)技巧

2024-07-16 17:58:59
字體:
供稿:網(wǎng)友

  任何編程開發(fā)語言接觸過了或多或少都會有一套自己的經(jīng)驗,今天小編為大家提供jgraph開發(fā)技巧,讓新人們少走點彎路。下面一起來學(xué)習(xí)下jgraph開發(fā)技巧吧!
  jgraph的畫圖機制
  參照了JGraph的example和源代碼,發(fā)現(xiàn):
  JGraph將圖元定義為一個一個的cell,每個cell可以是一個頂點(Vertex)、邊(Edge)或者節(jié)點(Port)中的一種。頂點可以有鄰接的頂點,他們通過邊相聯(lián)系,邊聯(lián)接的兩個端點稱為目標(biāo)和源,每個目標(biāo)或者源是一個節(jié)點。節(jié)點是頂點的孩子。每個cell都可以有自己的孩子。
  每個cell的外觀由相應(yīng)的屬性定義,屬性序列是指一系列的鍵-值對,他們以Map形式組織,例如:
  //定義Edge的外觀
  Map map = new Hashtable();
  GraphConstants.setLineEnd(map, GraphConstants.ARROW_CLASSIC);
  GraphConstants.setEndFill(map, true);
  GraphConstants.setLabelAlongEdge(map, true);
  getAttributes().applyMap(map);
  而“畫布”(類JGraph,不妨如此理解吧)也可以有自己的外觀屬性。例如:
  //定義畫布的屬性
  setBackground(Color.decode("#C0C0C0"));
  setEditable(false);
  setCloneable(false);
  setInvokesStopCellEditing(true);
  setJumpToDefaultPort(true);
  setPortsVisible(false);
  setGridEnabled(false);
  setGridVisible(false);
  setGridMode(JGraph.CROSS_GRID_MODE);
  setGridColor(Color.decode("#808080"));
  setGridSize(10);
  jgraph的擴展
  JGraph只是提供單純的圖形繪制功能,不包含實際的數(shù)據(jù),所以要想辦法把自己的數(shù)據(jù)“加”進去才行,這恐怕就得考慮擴展JGraph了。
  頂點(Vertex)對應(yīng)的類為org.jgraph.graph.DefaultGraphCell
  邊(Edge)對應(yīng)的類為org.jgraph.graph.DefaultEdge
  節(jié)點(Port)對應(yīng)的類為org.jgraph.graph.DefaultPort
  我們要做的,僅僅是分別繼承相應(yīng)的類,并把自己的數(shù)據(jù)對象放進去而已。當(dāng)然,還可以改變相應(yīng)的外觀屬性。不過如果你對繪圖事件也感興趣的話(呵呵,十有八九應(yīng)該有用的),還要留意一下org.jgraph.graph.BasicMarqueeHandler和org.jgraph.graph.GraphUndoManager這兩個類呢。BasicMarqueeHandler中包括了在畫布上點擊鼠標(biāo)、增加連線、合并等等事件的處理,而GraphUndoManager則主管撤銷、回復(fù)事件
  如果仔細操作,你也許回發(fā)現(xiàn),點擊邊(Edge)的端點進行移動的事件并不由GraphUndoManager來處理,這時候就要再關(guān)注一個類了:org.jgraph.graph.EdgeView.EdgeHandle,這是一個內(nèi)部類,如果需要的話,自己重寫一個類繼承它吧。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 成人国产在线视频 | 成人av观看 | 日韩精品一区二区三区四区 | 五月天婷婷国产精品 | 欧美a一级 | 日韩1区 | 国产伦精品一区二区三区在线 | 久久成人一区 | 综合91| 中文字幕在线观看资源 | 日韩欧美在线观看视频网站 | 国产成人精品久久久 | 国产一区二区三区在线免费 | 中文字幕免费看 | 久久久久久久999 | 午夜视频网站 | 日韩视频中文字幕在线观看 | 日韩精品视频免费看 | 91精品国产综合久久精品 | 蜜臀99久久精品久久久久久软件 | 欧美一级免费 | 污视频网址在线观看 | 国产理论一区 | 99re热精品视频 | 综合色婷婷一区二区亚洲欧美国产 | 蜜桃久久久 | 久久久久久久久久久久久久久 | 欧美午夜精品一区二区三区 | 99re6热在线精品视频播放 | 在线播放一区二区三区 | 日韩在线一区二区三区 | 色播99| 啪啪tv网站免费入口 | 日本狠狠操| 中文字幕一区二区在线观看 | 国产亚洲成av人片在线观看 | 狠狠狠干| 亚洲精品国产99 | av男人天堂网 | 国产欧美一区二区精品性色 | 日韩精品一区二 |