锘??xml version="1.0" encoding="utf-8" standalone="yes"?>蜜桃传媒一区二区亚洲AV,久久亚洲国产成人精品无码区,亚洲人成网站色7799http://www.tkk7.com/hopeshared/category/5325.html闈欎笅蹇冩潵錛屼竴鍒囧彉寰楃編濂?/description>zh-cnTue, 27 Feb 2007 11:21:05 GMTTue, 27 Feb 2007 11:21:05 GMT60gef甯冨眬鐨勪竴鐐規(guī)劅鎯?/title><link>http://www.tkk7.com/hopeshared/archive/2005/12/30/26061.html</link><dc:creator>hopeshared</dc:creator><author>hopeshared</author><pubDate>Fri, 30 Dec 2005 06:58:00 GMT</pubDate><guid>http://www.tkk7.com/hopeshared/archive/2005/12/30/26061.html</guid><wfw:comment>http://www.tkk7.com/hopeshared/comments/26061.html</wfw:comment><comments>http://www.tkk7.com/hopeshared/archive/2005/12/30/26061.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.tkk7.com/hopeshared/comments/commentRss/26061.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/hopeshared/services/trackbacks/26061.html</trackback:ping><description><![CDATA[ <p> <strong>鍓嶈█</strong> <br /> <br />榪欎笁澶╂潵錛屼竴鐩村湪涓轟竴涓棶棰樻墍鍥版壈銆?br /><br />鎴戝仛鐨勯」鐩槸灝唀mf鍜実ef緇撳悎鐨勪竴涓吀鍨嬪疄渚嬨傚叾瀹炴垜鎺ヨЕ榪欎簺涓滆タ涔熸墠4錛?涓湀錛屼袱涓狤clipse宸ュ叿閮藉緢鐔熸?zhèn)夊Q屼絾鏄茍涓嶈兘璇存槸綺鵑氥?br /><br />鍦ㄩ」鐩埗浣滅殑榪囩▼涓紝緙栬緫鍣ㄧ殑甯冨眬闂騫舵病鏈夋嬁鍒版闈笂鏉ヨ璁恒傛瘯绔燂紝鍔熻兘娌℃湁瀹炵幇錛岀紪杈戝櫒浣滅殑鍐嶆紓浜篃涓嶈搗浣滅敤銆?br /><br />鐜板湪錛屾墍鏈夌殑鍔熻兘鐐瑰叏閮ㄦ寜瑕佹眰瀹炵幇浜嗭紝鍙槸鍐嶇湅鐪嬬紪杈戝櫒錛屽氨浼氳寰楀緢澶栬錛屽懙鍛點?br /><br />灝界鑰佸ぇ涓嶅湪鍏徃錛屼絾鏄垜鎯充粬鑲畾鏀寔鎴戠殑榪欎釜鎯蟲硶錛氬皢鐣岄潰浣滅殑professional涓鐐廣?br /><br />浜庢槸錛屾垜嫻垂浜?澶╂椂闂存潵閲嶆柊鍋氬竷灞銆?br /><br /><br /><br /><strong>鎼滅儲icon<br /></strong><br />欏圭洰緇勬病鏈夌粰鎴戦厤澶囩編宸ワ紝鎵鏈夌殑鍥劇墖閮芥槸涓存椂鐨勶紝鎴戝氨閲囩敤浜嗕竴浜泀q琛ㄦ儏鍥撅紝鎵浠ョ紪杈戝櫒寰堚滃彲鐖扁濄傜幇鍦ㄩ渶瑕佹牴鎹瘡涓ā鍨嬬殑瀹為檯鍚箟鏉ラ厤澶噄con錛屼簬鏄埄鐢╣oogle & baidu鎼滀簡涓浜涘浘鐗囦笅鏉ャ傚ソ鍦ㄦ垜榪樹細鐐筽s錛岄偅浜屽崄澶氫釜鍥炬爣灝辯畻瀹氫簡銆?br /><br /><br /><strong>鐮旂┒甯冨眬<br /></strong></p> <p>榪欐鐨勪唬鐮佸ぇ鏀歸狅紝闇瑕佷弗閲嶇殑鎰熻阿涓涓漢錛歳eload_cn銆傞潪甯告劅璋粬鑳借愬績鐨勫惉鎴戜笉鍋滅殑鍙戠墷楠氾紝騫剁粰浜庢紜殑鎸囧銆傝繖瀵瑰悗鏉ョ殑鏀歸犳垚鍔熻搗鍐沖畾鎬т綔鐢ㄣ傚敖綆′粬灝嗙ぞ鍖洪噷鐨勫竻鐓ф敼鎴愪簡榛戠尒鐚?.....<br /><br />濂斤紝杞叆姝i銆傜洰鍓嶇殑緙栬緫鍣ㄥ姛鑳藉凡緇忓疄鐜頒簡錛屼絾鏄負浠涔堣鏀瑰竷灞鍛紵鍥犱負鐜板湪緙栬緫鍣ㄩ噰鐢ㄧ殑鏄痻yLayout錛屽垱寤轟竴涓璞′箣鍚庯紝灝嗗畠鐨剎ywh淇濆瓨鍦ㄦā鍨嬪璞′腑錛岀劧鍚庡啀refreshVisual鐨勬椂鍊欒緗瓼igure鐨凚ound銆傝繖涔堝仛鐨勯棶棰樻槸錛岄鍏堬紝娌℃湁寰堝ソ鐨勮綆楀潗鏍囷紝鎵浠ュ潗鏍囨湁鐐瑰嚭鍏ワ紙鏈夌殑鏃跺欏潗鏍囧嚭鍏ュぇ鐨勯毦浠ユ帴鍙楋級錛屽叾嬈★紝鏈伐鍏峰畾涔夌殑涓昏鏄祦紼嬶紝鎵浠ョ紪杈戝櫒閲岀殑鈥滃唴瀹光濆緢澶氾紝姣忓垱寤轟竴涓璞¢兘闇瑕?u>鎵嬪伐</u>鎷栨嫿鍒板悎閫傜殑浣嶇疆涓娿?br /><br />鍦╮eload_cn鐨勬彁紺轟笅錛屾垜鐮旂┒浜嗕竴涓婫EF鐨凢low渚嬪瓙銆傜敱浜庢椂闂村叧緋伙紙鍏冩棪涔嬪悗灝變細鍙戝竷鏈緇堢増鏈紝瑕佷笉鍔犵彮錛岃涓嶅姞蹇剼姝ュ共媧伙級錛屾垜鐩存帴灝卞皢flow閲岀殑GraphLayoutManager鎷胯繃鏉ョ敤浜?..<br /><br />緇撴灉鏄紝緇忓父鎶ヤ簺鑾悕鍏跺鐨勯敊璇?br /><br />鎵璋撳績鎬ュ悆涓嶄簡鐑眴鑵愩?br /><br />緇х畫鍦╮eload_cn鐨勬彁紺轟笅錛岀爺絀朵簡浠栫殑sequnce diagram鐨勪緥瀛愩傚湪榪欎釜渚嬪瓙涓紝浠栧仛浜嗕釜寰堢畝鍗曠殑甯冨眬澶勭悊銆?br /><br />浠庤繖閲屼緥瀛愪腑錛屾垜棰嗘?zhèn)熷囖Z簡鐪熻皼錛?br />聽聽聽聽聽聽鍦‥ditPart涓緗殑Layout Policy鍏跺疄涓昏澶勭悊鐨勬槸鍒涘緩瀵硅薄絳夌瓑request錛屽茍涓嶅鐞嗙湡姝g殑緙栬緫鍣ㄥ竷灞銆傚張鎴栬呰瀹冪殑甯冨眬鏄昏緫鎰忎箟涓婄殑銆傜湡姝e鐞嗗竷灞錛屾潵璁╂垜浠湅鍒版晥鏋滅殑錛屾槸Figure鐨勫竷灞銆傝岃繖涓濂芥槸鎴戝父甯稿拷鐣ョ殑銆?br /><br />Figure鎬庝箞甯冨眬錛燂紵鎴戜竴鑸敤鐨勫氨鏄痻yLayout鍜孴oolbarLayout銆備絾鏄鏋滆浣滃嚭婕備寒鐨勬晥鏋滐紝榪欎簺榪樻槸涓嶅鐨勩傚叓榪涘埗鐨刡log涓彁鍒頒簡draw2d鐨則ree example銆傛垜鐪嬭繃浜嗭紝鐒跺悗鐮旂┒浜嗕竴涓嬶紝瑙夊緱澶畝鍗曚簡錛屼笉鑳界鍚堟湰欏圭洰鐨勯渶姹傘?br /><br />鍥炲ご鍐嶇湅鐪媐low錛岃寰楄繖涓緥瀛愭湰韜氨鏄祦紼嬪畾涔夛紝騫朵笖璺熸垜鐨勯」鐩湪Figure涓婃湁寰堝鍏卞悓鐐廣傘傘?br /><br />浠嶇劧蹇冩湁浣欐?zhèn)稿Q屾瘯绔熺敤flow鐨勪唬鐮佷綔鐨勬墍鏈夊皾璇曪紙鐢ㄤ簡1澶╃殑鏃墮棿錛夊叏閮ㄥけ璐ヤ簡錛岃屼笖榪樿觸鐨勮帿鍚嶅叾濡欍?br /><br /><br /><strong>寮濮嬪皾璇?/strong><br /><br />涓嶈兘鍥犱負澶辮觸錛屾墍浠ユ斁寮冿紙浣嗘槸鍙互鏈夋斁寮冪殑鎯蟲硶錛屽懙鍛碉級銆傛垜鍐沖畾涓鐐逛竴鐐瑰湴鏉ュ皾璇曘?br /><br />棣栧厛錛屾垜鏇挎崲浜嗘墍鏈夌殑icon錛岃嚦灝戝浘鏍囩湅璧鋒潵宸茬粡鑸掓湇澶氫簡銆?br /><br />鎺ョ潃錛屾牴鎹甪low涓璮igure鐨勫仛娉曪紝鏇存柊浜嗛」鐩腑鐨勬墍鏈塅igure銆傝繍琛屼竴涓嬬湅鐪嬶紝鍛靛懙錛岃嚦灝戝浘鏍囧緢璞′簡銆?br /><br />鎴戝緢鍠滄flow涓嚜鍔ㄨ綆桭igure浣嶇疆鐨勫姛鑳藉拰鍔ㄦ佺Щ鍔ㄦ晥鏋溿傛庝箞鍔烇紵緇х畫鏀硅浠g爜銆?br /><br />灝咷raphLayoutManager灝忓績緲肩考鐨勬惉浜嗚繃鏉ャ傛病鏈夋晥鏋溿備絾鏄嚦灝戞病鏈夊嚭閿欍?br /><br />寮濮嬩嬌鐢℅raphLayoutManager鏉ヨ繘琛屽潗鏍囪綆椼傦紙榪欎釜榪囩▼婕暱鑰岀棝鑻︼紝涓嶅仠鐨勬姤寮傚父錛屼笉鍋滅殑瀵規(guī)瘮浠g爜錛屼笉鍋滅殑璺熻釜錛屼笉鍋滅殑鍙戠墷楠?...錛?br /><br />鏈鍚庡嚭鐨勯棶棰樻渶鏈夋剰鎬濓紝鍋囧緙栬緫鍣ㄦ牴妯″瀷鐨凢igure閲囩敤flow涓殑figure錛岄偅涔堢紪杈戝櫒涓彧鏄劇ず榪炵嚎銆備負浠涔堝憿錛熷洜涓烘垜鐨勭紪杈戝櫒涓嬌鐢ㄧ殑鏄痸iewer.setRootEditPart(new ScalableFreeformRootEditPart());鑰宖low涓敤鐨勬槸getGraphicalViewer().setRootEditPart(new ScalableRootEditPart());鎵浠ュ湪鎴戣繖杈癸紝figure閲囩敤FreeformLayer灝眓o problem浜嗐?/p> <p>鏈緇堝緱緇撴灉鏄敼濂戒簡錛屼竴鍒囬兘璺焒low閭d箞璞?br /><br /><strong>緇撴灉</strong><br /><br /><img height="314" alt="1.GIF" src="http://www.tkk7.com/images/blogjava_net/hopeshared/1.GIF" width="264" border="0" />聽聽聽聽 <img height="361" alt="2.GIF" src="http://www.tkk7.com/images/blogjava_net/hopeshared/2.GIF" width="267" border="0" /><br /><br /><br /><strong>緇撹<br /></strong><br />鍋囧浣犲拰鎴戜竴鏍鳳紝鍦ㄩ」鐩埗浣滃悗鏈熶慨鏀圭紪杈戝櫒鐨勫竷灞錛岃繖閲屾湁鍑犱釜寤鴻錛?br /><br />1 鐮旂┒涓涓嬩緥瀛愶紝浠庣畝鍗曠殑寮濮嬶紝涓鐩村埌闅劇殑錛岃鐞嗚鐭ヨ瘑鏍規(guī)繁钂傚浐銆?br />2 浣滀釜灝忎緥瀛愶紝鎴栬呭皢浣犲凡緇忎綔鐨勫皬渚嬪瓙榪涜綾諱技鐨勬敼緙栵紝鐪嬬湅鍑轟粈涔堥棶棰橈紝涓轟粈涔堝嚭闂銆?br />3 渚嬪瓙娌″仛鍑烘潵娌″叧緋伙紝榪欎簺璺熷ご鏍藉湪灝忎緥瀛愪笂姣旀牻鍦ㄩ」鐩腑璁╀漢嬈f叞鐨勫銆?br />4 鍏堜慨鏀笷igure銆傚敖閲忔帴榪戜綘鎯寵鐨勬晥鏋溿?br />5 寮曞叆甯冨眬錛屾殏鏃朵笉瑕佷嬌鐢ㄥ畠錛屽彧瑕佷粬鐨勬祦紼嬭蛋涓嬫潵娌℃湁闂灝辨垚鍔熶簡涓鍗娿?br />6 浣跨敤甯冨眬銆備細鍑虹幇寰堝闂錛屼絾鏄緢瀹規(guī)槗瀹氫綅闂銆傝皟璇曞惂銆?br /><br />鏆傛椂灝辮繖涔堝鍚э紝鍒氬垰鐨勬敼鍔ㄥ鑷翠簡緙栬緫鍣ㄤ腑鐨勫垹闄ゅ姛鑳芥姏寮傚父錛屾垜寰楃湅鐪嬪幓<br /></p> <img src ="http://www.tkk7.com/hopeshared/aggbug/26061.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/hopeshared/" target="_blank">hopeshared</a> 2005-12-30 14:58 <a href="http://www.tkk7.com/hopeshared/archive/2005/12/30/26061.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>杞? 鍦℅EF涓浣曚嬌鐢―irectedGraph鏉ュ鍥句腑鐨勫璞¤繘琛屼綅緗殑鎺掓斁 http://www.tkk7.com/hopeshared/archive/2005/12/28/25746.htmlhopesharedhopesharedWed, 28 Dec 2005 08:53:00 GMThttp://www.tkk7.com/hopeshared/archive/2005/12/28/25746.htmlhttp://www.tkk7.com/hopeshared/comments/25746.htmlhttp://www.tkk7.com/hopeshared/archive/2005/12/28/25746.html#Feedback0http://www.tkk7.com/hopeshared/comments/commentRss/25746.htmlhttp://www.tkk7.com/hopeshared/services/trackbacks/25746.html鍦ㄤ嬌鐢?/SPAN>GEF榪涜寮鍙戠殑鏃跺欙紝瀵逛簬闇瑕佺粯鍒剁殑鍥懼艦鐨勮妭鐐癸紝寰寰闄や簡妯″瀷瀵硅薄鏈韓涔嬪錛岃繕闇瑕佹湁涓涓浉搴旂殑鈥滃浘鈥濆璞℃潵淇濆瓨鍥句腑榪欎釜鑺傜偣鐨勪綅緗紝浠ュ強澶у皬絳夊浘鐩稿叧錛屼絾鏄笌涓氬姟妯″瀷鏃犲叧鐨勪竴涓璞°傝屽湪涓寮濮嬪笇鏈涙樉紺轟竴涓垵濮嬫ā鍨嬫枃浠剁殑鏃跺欙紝鍐嶅搴斾繚瀛樺浘淇℃伅鐨勬枃浠朵笉瀛樺湪鐨勬儏鍐典笅錛屽浣曡兘澶熷緢濂界殑鏄劇ず榪欎釜鍥撅紝鏄竴涓瘮杈冮夯鐑︾殑闂錛屾秹鍙婂埌瀵瑰竷灞綆楁硶鐨勪竴浜涘垎鏋愪笌瀹炵幇銆傝繖鐗囨枃绔犲氨鏄粙緇嶏紝濡備綍浣跨敤GEF鍐呯殑DirectedGraph榪欎釜綾諱互鍙婂叾鐩稿簲鐨勫竷灞綆楁硶綾?/SPAN>DirectedGraphLayout錛屾潵瑙e喅榪欎釜闂銆?BR>鍩烘湰鎬濇兂鏄細涓?/STRONG>GEF鐨?/SPAN>EditPart妯″瀷鐢熸垚涓涓?/SPAN>DirectedGraph錛岀劧鍚庝嬌鐢?/SPAN>DirectedGraphLayout鏉ヨ綆楀竷灞錛屾渶鍚庡皢甯冨眬鐨勭粨鏋滈氳繃GEF鏄劇ず鍑烘潵銆?/SPAN>

 

鍦ㄥ弬鑰冧簡GEF鐨?/SPAN>flow example涔嬪悗錛屽鍏朵唬鐮佷綔浜嗛儴鍒嗛噸鏋勶紝鍐欎簡榪欑墖鏂囩珷錛屽笇鏈涘閬囧埌鍚屾牱闂鐨勫悓蹇楄兘澶熸湁涓瀹氱殑甯姪銆?/SPAN>

 

棣栧厛寮曞叆涓涓帴鍙o細

public interface GraphBuilder {

       public void contributeNodesToGraph(DirectedGraph graph, Map map);

       public void contributeEdgesToGraph(DirectedGraph graph, Map map);

       public void applyGraphResults(DirectedGraph graph, Map map);

}

榪欎釜鎺ュ彛涓畾涔変簡鍑犱釜鏂規(guī)硶錛屽叾鍚箟浠庡叾鏂規(guī)硶鍚嶄腑鍙互鐚滃嚭錛?/SPAN>

contributeNodesToGraph錛氬皢褰撳墠瀵硅薄浣滀負鑺傜偣錛?/SPAN>Node錛夋坊鍔犲埌DirectedGraph涓?/SPAN>

contributeEdgesToGraph錛氬皢褰撳墠瀵硅薄鎵瀵瑰簲鐨勮繛綰夸綔涓鴻竟錛?/SPAN>Edge錛夋坊鍔犲埌DirectedGraph涓?/SPAN>

applyGraphResults錛氬皢鍥句腑鐢熸垚鐨勫竷灞淇℃伅鍙栧嚭錛屽鏈璞¤繘琛岄噸鏂板竷灞銆?/SPAN>

鎺ュ彛涓殑graph鍙傛暟灝辨槸淇濆瓨鐨勫浘鐨勪俊鎭紝map鍙傛暟緇存寔涓涓璞″埌鑺傜偣/杈圭殑鏄犲皠錛屼嬌寰楁瘡涓璞¤兘澶熸柟渚跨殑鎵懼埌鍏跺搴旂殑鍥句腑鐨勮妭鐐規(guī)垨鑰呰竟銆傝繖涓帴鍙g殑浣跨敤錛屽湪鍚庨潰浼氭湁娑夊強銆備笅闈㈠厛鐪嬬湅鏄劇ず鍥劇殑瀹瑰櫒鏄浣曟瀯寤虹殑銆?/SPAN>

 

鍥劇殑瀹瑰櫒瀹氫箟涓?/SPAN>GraphDiagramEditPart錛岃繖涓?/SPAN>EditPart瀵瑰簲浜庤鏄劇ず鐨勬湁鍚戝浘鐨勫鍣ㄣ傚畠瀹炵幇浜?/SPAN>GraphBuider鎺ュ彛錛岃繖涔熸槸鎴戜滑涓昏闇瑕佸叧娉ㄧ殑鎺ュ彛錛?/SPAN>

public class GraphDiagramEditPart extends AbstractGraphicalEditPart implements

              GraphBuilder.

 

contributeNodesToGraph鏂規(guī)硶灝嗚嚜韜綔涓鴻妭鐐規(guī)坊鍔犲埌鍥句腑錛屼絾鏄洜涓?/SPAN>GraphDiagramEditPart瀵瑰簲鐨勬槸瀹瑰櫒錛屽洜姝ゅ畠涓嶉渶瑕佸悜鍥句腑娣誨姞淇℃伅錛屽彧鏄皟鐢ㄥ叾瀛?/SPAN>EditPart錛屽皢鍏舵坊鍔犲埌鍥句腑銆?/SPAN>

       public void contributeNodesToGraph(DirectedGraph graph, Map map) {

              for (int i = 0; i < getChildren().size(); i++) {

                     NodeEditPart activity = (NodeEditPart)getChildren().get(i);

                     activity.contributeNodesToGraph(graph, map);

              }

       }

 

contributeEdgesToGraph鏂規(guī)硶灝嗚繖涓?/SPAN>EditPart鐨勬墍鏈夊瓙EditPart鍙栧嚭錛岃皟鐢ㄥ叾contributeEdgesToGraph鏂規(guī)硶錛岄氳繃榪欎釜鏂規(guī)硶錛屽氨鍙互灝嗘墍鏈夌殑杈規(guī)坊鍔犲埌鍥句腑浜嗭細

       public void contributeEdgesToGraph(DirectedGraph graph, Map map) {

              for (int i = 0; i < getChildren().size(); i++) {

                     NodeEditPart child = (NodeEditPart)children.get(i);

                     child.contributeEdgesToGraph(graph, map);

              }

       }

 

applyGraphResults鏂規(guī)硶灝嗘墍鏈夊彇鍑烘墍鏈夌殑瀛?/SPAN>EditPart錛屽茍璋冪敤鍏?/SPAN>applyGraphResults錛屼嬌寰楀浘涓墍鐢熸垚鐨勫竷灞淇℃伅鑳藉琚簲鐢ㄥ埌鏄劇ず涓娿?/SPAN>

       public void applyGraphResults(DirectedGraph graph, Map map) {

              applyChildrenResults(graph, map);

       }

       protected void applyChildrenResults(DirectedGraph graph, Map map) {

              for (int i = 0; i < getChildren().size(); i++) {

                     GraphBuilder part = (GraphBuilder) getChildren().get(i);

                     part.applyGraphResults(graph, map);

              }

       }

 

涓嬮潰瑕佷粙緇嶇殑鏄?/SPAN>NodeEditPart錛屽畠浣滃浘涓墍鏈夎妭鐐規(guī)墍瀵瑰簲鐨?/SPAN>EditPart鐨勬娊璞$埗綾伙紝涔熷疄鐜頒簡GraphBuilder鎺ュ彛銆傛瘡涓涓鍋氫負鑺傜偣娣誨姞鍒板浘涓殑EditPart錛屽簲璇ョ戶鎵胯繖涓被銆?/SPAN>

public abstract class NodeEditPart extends AbstractGraphicalEditPart implements

              GraphBuilder{

 

       public void contributeNodesToGraph(DirectedGraph graph,

                     Map map) {

              Node n = new Node(this);

              n.outgoingOffset = 7;

              n.incomingOffset = 7;

              n.width = getFigure().getPreferredSize().width;

              n.height = getFigure().getPreferredSize().height;

              n.setPadding(new Insets(10,8,10,12));

              map.put(this, n);

              graph.nodes.add(n);

       }

 

       public void contributeEdgesToGraph(DirectedGraph graph, Map map) {

              List outgoing = getSourceConnections();

              for (int i = 0; i < outgoing.size(); i++) {

                     EdgeEditPart part = (EdgeEditPart)getSourceConnections().get(i);

                     part.contributeEdgesToGraph(graph, map);

              }

       }

 

       public void applyGraphResults(DirectedGraph graph, Map map) {

              Node n = (Node)map.get(this);

              getFigure().setBounds(new Rectangle(n.x, n.y, n.width, n.height));

              for (int i = 0; i < getSourceConnections().size(); i++) {

                     EdgeEditPart trans = (EdgeEditPart) getSourceConnections().get(i);

                     trans.applyGraphResults(graph, map);

              }

       }

}

 

鍐嶅氨鏄竟鎵瀵瑰簲EditPart鐨勬娊璞$被EdgeEditPart銆傛瘡涓涓浣滀負杈規(guī)坊鍔犲埌鍥句腑鐨?/SPAN>EditPart錛岄渶瑕佺戶鎵胯繖涓被銆傚湪涓婇潰NodeEditPart涓鍏舵墍瀵瑰簲鐨?/SPAN>Figure鍏跺疄騫舵病鏈変粈涔堣姹傦紝浣嗘槸瀵?/SPAN>EdgeEditPart鎵瀵瑰簲鐨?/SPAN>Figure錛岃姹傚叾Figure蹇呴』鐢變竴涓?/SPAN>BendpointConnectionRouter錛屼綔涓哄叾ConnectionRouter錛?/SPAN>setConnectionRouter(new BendpointConnectionRouter())銆傝繖鏍峰浘鐨勮竟鐨勮礬寰勪俊鎭墠鑳藉琚樉紺哄嚭鏉ャ?/SPAN>

public abstract class EdgeEditPart extends AbstractConnectionEditPart implements

              GraphBuilder {

 

       public void contributeEdgesToGraph(DirectedGraph graph, Map map) {

              Node source = (Node)map.get(getSource());

              Node target = (Node)map.get(getTarget());

              Edge e = new Edge(this, source, target);

              e.weight = 2;

              graph.edges.add(e);

              map.put(this, e);

       }

 

       public void applyGraphResults(DirectedGraph graph, Map map) {

              Edge e = (Edge)map.get(this);

              NodeList nodes = e.vNodes;

              PolylineConnection conn = (PolylineConnection)getConnectionFigure();

              conn.setTargetDecoration(new PolygonDecoration());

              if (nodes != null) {

                     List bends = new ArrayList();

                     for (int i = 0; i < nodes.size(); i++) {

                            Node vn = nodes.getNode(i);

                            int x = vn.x;

                            int y = vn.y;

                            if (e.isFeedback) {

                                   bends.add(new AbsoluteBendpoint(x, y + vn.height));

                                   bends.add(new AbsoluteBendpoint(x, y));

 

                            } else {

                                   bends.add(new AbsoluteBendpoint(x, y));

                                   bends.add(new AbsoluteBendpoint(x, y + vn.height));

                            }

                     }

                     conn.setRoutingConstraint(bends);

              } else {

                     conn.setRoutingConstraint(Collections.EMPTY_LIST);

              }

       }

}

 

鏈鍚庣殑灝辨槸涓涓?/SPAN>LayoutManager鏉ュ垵濮嬪寲鍥劇殑鍒涘緩錛屼互鍙婂鍥劇殑淇℃伅榪涜瑙i噴浜嗭紝鐢熸垚鏈緇堝竷灞浜嗐傝繖涓?/SPAN>GraphLayoutManager浣滀負GraphDiagramEditPart鎵瀵瑰簲鐨?/SPAN>GraphDiagram鐨?/SPAN>LayoutManager錛屾潵鏄劇ず鍥劇殑鍐呭銆?/SPAN>

public class GraphLayoutManager extends AbstractLayout {

       private GraphBuilder diagram;

 

       GraphLayoutManager(GraphBuilder diagram) {

              this.diagram = diagram;

       }

 

       protected Dimension calculatePreferredSize(IFigure container, int wHint,

                     int hHint) {

              container.validate();

              List children = container.getChildren();

              Rectangle result = new Rectangle().setLocation(container

                            .getClientArea().getLocation());

              for (int i = 0; i < children.size(); i++)

                     result.union(((IFigure) children.get(i)).getBounds());

              result.resize(container.getInsets().getWidth(), container.getInsets()

                            .getHeight());

              return result.getSize();

       }

 

       public void layout(IFigure container) {

              DirectedGraph graph = new DirectedGraph();

              Map partsToNodes = new HashMap();

              diagram.contributeNodesToGraph(graph, partsToNodes);

              diagram.contributeEdgesToGraph(graph, partsToNodes);

              new DirectedGraphLayout().visit(graph);

              diagram.applyGraphResults(graph, partsToNodes);

       }

}

鍙互鐪嬪埌鍦?/SPAN>layout鏂規(guī)硶涓紝棣栧厛鐢熸垚浜嗕竴涓?/SPAN>DirectedGraph錛屽茍璋冪敤浜?/SPAN>contributeNodesToGraph浠ュ強contributeEdgesToGraph鏂規(guī)硶錛屽皢鑺傜偣鍜岃竟鐨勪俊鎭坊鍔犲埌榪欎釜鐢熸垚鐨?/SPAN>DirectedGraphGraph涓紝鐒跺悗浣跨敤甯冨眬綆楁硶DirectedGraphLayout().visit(graph)鏉ヨ綆楃敓鎴愬浘鐨勪俊鎭紙榪欓噷浣跨敤浜?/SPAN>visitor妯″紡錛夋渶鍚庤皟鐢?/SPAN>applyGraphResults灝嗗浘鐨勪俊鎭簲鐢ㄥ埌鍥懼艦鐨勬樉紺轟笂銆?/SPAN>

 

鑷蟲錛屾墍鏈夋鏋剁殑宸ヤ綔鍋氬畬浜嗭紝濡傛灉瑕佸皢妯″瀷浣滀負涓涓湁鍚戝浘鏄劇ず鐨勮瘽錛屽彧闇瑕佸皢妯″瀷鐨勫鍣ㄥ璞″搴斾簬GraphDiagramEditPart錛堝湪EditPartFactory涓繘琛屾槧灝勶級錛屼負姣忎竴涓渶瑕佽〃紺轟負鑺傜偣鐨勫璞★紝瀵瑰簲鍒頒竴涓戶鎵夸簬NodeEditPart鐨?/SPAN>EditPart錛屼負姣忎竴涓渶瑕佽〃紺轟負杈圭殑妯″瀷瀵硅薄錛屽搴斿埌涓涓戶鎵夸簬EdgeEditPart鐨?/SPAN>EditPart銆傝繖鏍鳳紝灝辮兘澶熷皢鍥劇殑甯冨眬綆楁硶錛屽簲鐢ㄥ埌GEF妗嗘灦涓簡銆?/SPAN>

 

榪欓噷鍐欑殑姣旇緝綆鍗曪紝浣跨敤璧鋒潵涔熶細鏈変竴浜涘叿浣撶殑綰︽潫銆備緥濡傚湪鏈夊悜鍥句腑錛屾槸涓嶈兘澶熸湁瀛ょ珛鐨勮妭鐐圭殑銆傚鏋滀嬌鐢?/SPAN>CompoundDirectedGraph錛屽氨涓嶄細鏈夎繖鏍風(fēng)殑闂錛?/SPAN>CompoundDirectedGraph鍙互鍖呮嫭瀛愬浘錛屽彲浠ユ敮鎸佹洿涓哄鏉傜殑鍥懼艦銆傚湪Flow Example涓嬌鐢ㄧ殑灝辨槸CompoundDirectedGraph銆傚湪鍚庨潰錛屾垜鎴栬浼氬皢榪欎釜妗嗘灦榪涜鏀瑰啓錛屼互浣垮叾鏀寔CompoundDirectedGraph鏉ヨ繘琛屽竷灞綆楁硶銆備笅闈㈢殑鍥炬槸涓涓敓鎴愮殑渚嬪瓙錛屽ぇ瀹跺彲浠ョ湅涓涓嬫晥鏋?

example_1.JPG

榪欐槸浠嶰WL鏂囦歡涓鍙栧唴瀹逛箣鍚庣敓鎴愮殑涓涓浘鐨勮〃紺恒傚彲浠ョ湅鍒幫紝OWL鐨勮妭鐐歸氳繃鑷姩鍥劇殑鑷姩甯冨眬涔嬪悗錛屽凡緇忔湁浜嗚緝濂界殑瑙嗚鏁堟灉銆傚鏋滄病鏈夎繖鏍風(fēng)殑甯冨眬鐨勮瘽錛屽洜涓哄崟綰殑OWL鏂囦歡涓茍涓嶄細鍖呭惈鑺傜偣鐨勫浘鐨勪俊鎭紝鍥炬樉紺哄嚭鏉ヤ細鍙樺緱闈炲父鐨勪貢錛屾墍鏈夌殑鑺傜偣閮戒細鍫嗗湪涓璧楓?BR>




鍘熸枃鍦板潃:http://www.tkk7.com/eclipshine/archive/2005/07/22/8195.aspx



]]>
emf&gef涔嬩笁nodenewhttp://www.tkk7.com/hopeshared/archive/2005/12/15/24057.htmlhopesharedhopesharedThu, 15 Dec 2005 07:57:00 GMThttp://www.tkk7.com/hopeshared/archive/2005/12/15/24057.htmlhttp://www.tkk7.com/hopeshared/comments/24057.htmlhttp://www.tkk7.com/hopeshared/archive/2005/12/15/24057.html#Feedback1http://www.tkk7.com/hopeshared/comments/commentRss/24057.htmlhttp://www.tkk7.com/hopeshared/services/trackbacks/24057.html闃呰鍏ㄦ枃

]]>
emf&gef涔嬩簩nodetesthttp://www.tkk7.com/hopeshared/archive/2005/12/15/24026.htmlhopesharedhopesharedThu, 15 Dec 2005 05:44:00 GMThttp://www.tkk7.com/hopeshared/archive/2005/12/15/24026.htmlhttp://www.tkk7.com/hopeshared/comments/24026.htmlhttp://www.tkk7.com/hopeshared/archive/2005/12/15/24026.html#Feedback0http://www.tkk7.com/hopeshared/comments/commentRss/24026.htmlhttp://www.tkk7.com/hopeshared/services/trackbacks/24026.html闃呰鍏ㄦ枃

]]>
杞細SDO瀛︿範絎旇http://www.tkk7.com/hopeshared/archive/2005/12/14/23899.htmlhopesharedhopesharedWed, 14 Dec 2005 08:46:00 GMThttp://www.tkk7.com/hopeshared/archive/2005/12/14/23899.htmlhttp://www.tkk7.com/hopeshared/comments/23899.htmlhttp://www.tkk7.com/hopeshared/archive/2005/12/14/23899.html#Feedback0http://www.tkk7.com/hopeshared/comments/commentRss/23899.htmlhttp://www.tkk7.com/hopeshared/services/trackbacks/23899.htmlhttp://spaces.msn.com/members/ping-yuan/PersonalSpace.aspx?_c=
9.22 SDO瀛︿範絎旇
浠婂ぉ綺楃矖鐪嬩簡涓鐪糞DO錛岀暐鏈夌悊瑙c?/FONT>
 
SDO鍏ㄧОService Data Objects錛屾槸IBM鎻愬嚭鐨勪竴涓鏋惰鑼冦係DO妗嗘灦鐢變笁閮ㄥ垎緇勬垚錛欴MS錛圖ata Mediator Services錛夛紝Data Graph鍜孌ataObject銆侱MS璐熻矗鐢熸垚Data Graph錛孌ata Graph鍖呭惈涓緋誨垪鍏寵仈鐨凞ata Object銆傚鎴峰拰DataGraph鎵撲氦閬擄紝鑰孌MS濡備綍鐢熸垚Data Graph鍙堝浣曚粠Data Graph鏇存柊鍚庨潰鐨勬暟鎹垯鏃犻渶鍏沖績銆侱ata Graph鏄疍isconnected Mode鐨勬暟鎹鐞嗘柟寮忥紝鍗沖鍏惰繘琛岀殑淇敼鎿嶄綔錛屽皢涓嶄細绔嬪埢浣撶幇錛岄渶瑕佸皢淇敼榪囩殑Data Graph鐢盌MS鏉ユ洿鏂板埌鏁版嵁婧愩侱ata Graph鏄氳繃log change summary鏉ュ疄鐜扮殑銆?/FONT>
 
鍦⊿pec涓閬擄紝Data Graph琚簭鍒楀寲涓篨ML涔熻兘浠嶺ML涓鍙嶅簭鍒楀寲銆傝繖浣垮緱鍦⊿ervices鍜屽叾Caller涔嬮棿浼犻扗ataGraph闈炲父鐩存帴銆傚悓鏃朵篃鎻愬嚭浜嗙郴緇熷唴閮ㄣ佺郴緇熶箣闂存暟鎹氦浜掔殑涓鑷存柟寮忊斺旈氳繃XML搴忓垪鍖栬繃鐨凞ata Graph銆?/FONT>
 
Data Object鍙互琚姩鎬佸疄鐜幫紙紼嬪簭閲屽皢鐪嬩笉瑙佸叿浣撶殑Data Object綾伙紝姣斿Employee綾伙紝鍥犳涔熸棤闇瀹氫箟XML Schema錛夛紝涔熷彲浠ヨ闈欐佺敓鎴愶紙渚嬪棰勫厛寤烘ā鍚庝嬌鐢ㄥ伐鍏風(fēng)敓鎴愶紝鐩墠IBM鍩轟簬EMF鐨凴I鍙互浣跨敤EMF鏉ョ敓鎴愶級銆?/FONT>
 
DMS鍙互鏈夎澶氬疄鐜版柟寮忥紝鍦↖Bm鐨凷DO Specification涓茍娌℃湁浠諱綍鍏充簬DMS瀹炵幇鏂瑰紡鐨勮鑼冦傚疄闄呬笂錛孌MS鍦⊿DO Spec V2.0閲岄潰宸茬粡鏀圭ОDAS錛圖ata Access Services錛夛紝鎴戜滑鍙戠幇榪欏懡鍚嶅拰DAO錛圖ata Access Object錛夋ā寮忎綍鍏剁浉浼箋備笉榪囪繖閲屾槸Service銆傞偅涔堝彲浠ユ兂璞″湪SOA涓紝鎴戜滑鍙互鎻愪緵榪欐牱鐨凞AS鏉ユ彁渚涙暟鎹茍浣滄暟鎹洿鏂般傞毦閬撲笌DAO綾諱技榪欏皢浼氭垚涓轟竴縐峉OA妯″紡錛?/FONT>
 
鏇撮噸瑕佺殑鏄紝DAS鍙互鍦↗2EE鐨勫悇灞傞兘鑳借浣跨敤銆備綘鍙互浣跨敤JDBC瀹炵幇DAS鐢ㄥ畠鍋氫竴涓寔涔呭寲鏈嶅姟灞傦紝浣犲彲浠ョ敤EJB瀹炵幇DAS騫朵笖鏆撮湶鎴怶eb Service鈥︹︿綘鐢氳嚦鍙互浣跨敤Hibernate銆丣DO榪欐牱鐨勬寔涔呭寲宸ュ叿鏉ュ疄鐜癉AS銆?/FONT>
 
鎵浠ユ垜浠笉鍙兘娣鋒穯SDO妗嗘灦鍜孒ibernate銆丣DO絳夊伐鍏封斺斿洜涓哄悗鑰呭彧鏄寔涔呭寲宸ュ叿瀛樺湪浜嶦IS涔嬩笂錛涗篃鏃犻渶鎬鐤慡DO鐨勪環(huán)鍊尖斺擲DO紜疄鍙互涓烘暣涓狫2EE搴旂敤灝ゅ叾鏄疭OA鎻愪緵涓涓竴鑷寸殑鏁版嵁澶勭悊鏂瑰紡銆?/FONT>
 
鏄庡ぉ緇х畫鐮旂┒銆傚笇鏈涜兘娣卞寲銆佺籂姝g幇鍦ㄧ殑鐞嗚В銆?BR>


]]>
emf&gef涔嬩竴example.my.gefpracticehttp://www.tkk7.com/hopeshared/archive/2005/11/27/21552.htmlhopesharedhopesharedSun, 27 Nov 2005 04:43:00 GMThttp://www.tkk7.com/hopeshared/archive/2005/11/27/21552.htmlhttp://www.tkk7.com/hopeshared/comments/21552.htmlhttp://www.tkk7.com/hopeshared/archive/2005/11/27/21552.html#Feedback5http://www.tkk7.com/hopeshared/comments/commentRss/21552.htmlhttp://www.tkk7.com/hopeshared/services/trackbacks/21552.html闃呰鍏ㄦ枃

]]>
主站蜘蛛池模板: 一级特级女人18毛片免费视频| 亚洲尹人九九大色香蕉网站| 成av免费大片黄在线观看| 国产成A人亚洲精V品无码性色 | 黄色毛片免费观看| 国产成人综合亚洲AV第一页| 96免费精品视频在线观看| 亚洲欧美乱色情图片| 久视频精品免费观看99| 亚洲色成人WWW永久网站| 韩国免费一级成人毛片| 色多多www视频在线观看免费| 无码AV动漫精品一区二区免费| 国产亚洲高清不卡在线观看| 在线观看免费人成视频| 国产免费牲交视频免费播放| a级毛片在线免费观看| 亚洲国产高清在线| 国产成人无码免费视频97| 四虎国产精品永久免费网址 | 亚洲精品无码专区久久同性男| 无码一区二区三区免费| 精品视频免费在线| 亚洲一级毛片免观看| 亚洲精品国产V片在线观看 | 国产国拍亚洲精品福利| 91成人免费在线视频| 在线观看免费视频一区| 国产精品亚洲а∨天堂2021| 亚洲精品福利在线观看| 亚洲精品二区国产综合野狼| 日韩一品在线播放视频一品免费| 日韩在线永久免费播放| eeuss影院www天堂免费| 亚洲AV无码一区二区三区牲色 | 一级日本高清视频免费观看| 国产精品亚洲精品观看不卡| 亚洲Av无码精品色午夜 | 亚洲理论在线观看| 久久亚洲国产成人亚| 久久久久亚洲av毛片大|