锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲国产av无码精品,亚洲第一成年免费网站,亚洲午夜AV无码专区在线播放http://m.tkk7.com/jacky9881/archive/2010/07/09/keybind.html鐜╄漿Java鐜╄漿JavaFri, 09 Jul 2010 12:52:00 GMThttp://m.tkk7.com/jacky9881/archive/2010/07/09/keybind.htmlhttp://m.tkk7.com/jacky9881/comments/325681.htmlhttp://m.tkk7.com/jacky9881/archive/2010/07/09/keybind.html#Feedback0http://m.tkk7.com/jacky9881/comments/commentRss/325681.htmlhttp://m.tkk7.com/jacky9881/services/trackbacks/325681.html org.eclipse.ui.bindings
org.eclipse.ui.contexts

鎵╁睍鐐筼rg.eclipse.ui.bindings鏄粰command澧炲姞蹇嵎閿紝緇撳悎錛堜粙緇嶄簩錛夛紝緇欏懡浠om.xxxx.test.command1澧炲姞蹇嵎閿紝
紺轟緥浠g爜濡備笅錛?br />
<extension
         
point="org.eclipse.ui.bindings">
      
<key
            
commandId="com.xxxx.test.command1"
            contextId
="org.eclipse.ui.contexts.window"
            schemeId
="org.eclipse.ui.defaultAcceleratorConfiguration"
            sequence
="M2+F7">
      
</key>  
</extension>

榪欐牱蹇嵎閿甋hift+F7鍦‥clipse宸ヤ綔鍙頒笂閮戒細璧蜂綔鐢紝浣嗘槸濡傛灉鎯寵鍛戒護鐨勫揩鎹烽敭鍙鐗瑰畾鐨勮鍥炬垨鑰呯紪杈戝櫒璧蜂綔鐢紝閭d箞鍙互閫氳繃org.eclipse.ui.contexts鎵╁睍鐐規潵鑷畾涔変笂涓嬫枃銆?br />
<extension
           
point="org.eclipse.ui.contexts">
        
<context
              
id="viewmenu.testcontext"
              name
="ViewContext"
              parentId
="org.eclipse.ui.contexts.window">
        
</context>
</extension>

鎵╁睍涔嬪悗錛岄渶瑕佷慨鏀筼rg.eclipse.ui.bindings鎵╁睍涓殑contextId灞炴т負viewmenu.testcontext銆?/span>

鍙﹀榪橀渶瑕佸湪闇瑕佸鍔犺蹇嵎閿殑緙栬緫鍣ㄦ垨鑰呰鍥懼搴旂被涓鍔犲涓嬩唬鐮侊紙瑙嗗浘綾誨湪浠g爜鐨刢reateControl鏂規硶錛岀紪杈戝櫒綾誨湪浠g爜鐨刬nit鏂規硶錛夛細

IContextService contextService = 
(IContextService) getSite().getService(IContextService.
class);
contextService.activateContext(
"viewmenu.testcontext");


鐜╄漿Java 2010-07-09 20:52 鍙戣〃璇勮
]]>
杞澆 Eclipse 鎻掍歡寮鍙?-- 娣卞叆鐞嗚В鑿滃崟錛圡enu錛夊姛鑳藉強鍏舵墿灞曠偣http://m.tkk7.com/jacky9881/archive/2010/07/03/menu.html鐜╄漿Java鐜╄漿JavaSat, 03 Jul 2010 08:00:00 GMThttp://m.tkk7.com/jacky9881/archive/2010/07/03/menu.htmlhttp://m.tkk7.com/jacky9881/comments/325151.htmlhttp://m.tkk7.com/jacky9881/archive/2010/07/03/menu.html#Feedback0http://m.tkk7.com/jacky9881/comments/commentRss/325151.htmlhttp://m.tkk7.com/jacky9881/services/trackbacks/325151.html

鑿滃崟鏄悇縐嶈蔣浠跺強寮鍙戝鉤鍙頒細鎻愪緵鐨勫繀澶囧姛鑳斤紝Eclipse 涔熶笉渚嬪錛屾彁渚涗簡涓板瘜鐨勮彍鍗曪紝鍖呮嫭涓昏彍鍗曪紙Main Menu錛夛紝瑙嗗浘 / 緙栬緫鍣ㄨ彍鍗曪紙ViewPart/Editor Menu錛夊拰涓婁笅鏂囪彍鍗曪紙Context Menu錛夈傚湪 Eclipse 涓紝鍑犱箮鎵鏈夌殑 Workbench Part 鎻愪緵浜嗕漢鎬у寲鐨勮彍鍗曪紝澶уぇ鏂逛究浜嗙敤鎴風殑鎿嶄綔銆傚洜姝わ紝濡備綍鎵╁睍 Eclipse 鐨勮彍鍗曞姛鑳斤紝騫跺疄鐜扮壒瀹氫簬鎴戜滑鑷繁鎻掍歡鐨勮彍鍗曪紝鏄彃浠跺紑鍙戣呭繀欏繪帉鎻$殑閲嶈鎶鑳斤紝鍚屾椂錛孍clipse 鎻愪緵浜嗕赴瀵岀殑鎵╁睍鐐逛緵寮鍙戜漢鍛樹嬌鐢ㄣ傛湰鏂囧皢棣栧厛浠嬬粛 Eclipse 涓殑鑿滃崟錛岀劧鍚庤緇嗚鏄庡浣曡繘琛屾墿灞曪紝鏈鍚庝互涓涓疄渚嬬殑褰㈠紡寮曞璇昏呮繁鍏ョ悊瑙?Eclipse 鐨勮彍鍗曞姛鑳姐?/p>

銆銆寮曡█

銆銆Eclipse 鍏鋒湁涓板瘜鐨勮彍鍗曞姛鑳斤紝緇欏紑鍙戜漢鍛樻彁渚涗簡寰堝ソ鐨勭敤鎴蜂綋楠屻傛諱綋鑰岃█錛孍clipse 鑿滃崟縐嶇被鍖呮嫭瑙嗗浘 / 緙栬緫鍣ㄨ彍鍗曪紝涓昏彍鍗曪紙Main Menu錛夛紝瑙嗗浘 / 緙栬緫鍣ㄨ彍鍗曪紙ViewPart/EditorPart Menu錛夊拰涓婁笅鏂囪彍鍗曪紙Context Menu錛夈傛彃浠跺紑鍙戜漢鍛橀氳繃鐏墊椿搴旂敤榪欎簺鑿滃崟錛屽彲浠ョ粰鐢ㄦ埛鎻愪緵寰堝ソ鐨勪綋楠屻傜敱浜庤鍥懼拰緙栬緫鍣ㄨ彍鍗曞姛鑳界被浼鹼紝鍥犳鏈枃閲嶇偣璁茶堪瑙嗗浘鑿滃崟錛堣鍥句笅鎷夎彍鍗曞強鍏跺伐鍏鋒爮鑿滃崟錛夛紝闄ゆ涔嬪錛岃繕灝嗚榪頒富鑿滃崟鍜屼笂涓嬫枃鑿滃崟銆?/p>

銆銆濡傚浘 1 鎵紺轟負 Project Explorer 瑙嗗浘鐨勮彍鍗曪紝鍖呮嫭瑙嗗浘涓嬫媺鑿滃崟鍜屽伐鍏鋒爮鑿滃崟錛堟姌鍙犳爲鑺傜偣錛夈傞氬父鑰岃█錛屽嚭鐜板湪瑙嗗浘宸ュ叿鏍忕殑鑿滃崟閮戒細鍑虹幇鍦ㄨ鍥劇殑涓嬫媺鑿滃崟錛屼篃灝辨槸璇達紝姣旇緝甯哥敤鐨勮鍥捐彍鍗曟斁鍦ㄨ鍥劇殑宸ュ叿鏍忋?/p>

鍥?1. Project Explorer 瑙嗗浘鐨勮彍鍗?/p>

 

 

銆銆濡傚浘 2 鎵紺轟負 Project Explorer 瑙嗗浘涓殑涓婁笅鏂囪彍鍗曪紝鍙湁褰撴垜浠彸閿偣鍑繪椂鎵嶄細鍑虹幇銆傞氬父鑰岃█錛屽嚭鐜伴鐜囪緝楂樼殑鑿滃崟欏規墠浼氬嚭鐜板湪鑿滃崟涓備笂涓嬫枃鑿滃崟鍏鋒湁寰堝己鐨勭伒媧婚」錛屽畠鍙互闅忕潃鎴戜滑鐐瑰嚮鐨勫璞′笉鍚岋紝寮瑰嚭鐨勮彍鍗曚篃浼氭湁鐩稿簲鐨勫彉鍖栥?/p>

鍥?2. Project Explorer 瑙嗗浘涓殑涓婁笅鏂囪彍鍗?/p>


銆銆濡傚浘 3 鎵紺轟負 Eclipse 鐨勪富鑿滃崟錛屽寘鎷渶涓婇潰鐨勪富鑿滃崟欏癸紙涓嶅彲縐誨姩錛夊強鍏朵笅闈㈢殑宸ュ叿鏍忚彍鍗曪紙鍙互縐誨姩錛屽茍涓?Eclipse 鎻愪緵浜嗘樉紺?/ 涓嶆樉紺鴻繖浜涜彍鍗曠殑鍔熻兘錛夛紝Eclipse 騫朵笉寤鴻鎴戜滑涓烘瘡涓涓彃浠墮兘娣誨姞鏂扮殑涓昏彍鍗曪紝榪欐牱瀹規槗閫犳垚鍐椾綑錛岃屼笖涓嶆柟渚跨敤鎴鋒搷浣溿傞氬父錛屾垜浠彲浠ユ妸鑿滃崟欏規坊鍔犲埌 Eclipse 宸叉湁鐨勮彍鍗曪紝濡傛彃浠剁殑鏌ユ壘鍔熻兘鍙互娣誨姞涓涓煡鎵捐彍鍗曢」鍒?Eclipse 鐨?Search 涓昏彍鍗曚笂銆?/p>

鍥?3. Eclipse 鐨勪富鑿滃崟


銆銆鍓嶉潰璁插埌 Eclipse 鐨勫悇縐嶈彍鍗曪紝閭d箞錛屽浣曞湪寮鍙戞彃浠舵垨 RCP 搴旂敤紼嬪簭鐨勬椂鍊欐坊鍔犺繖浜涜彍鍗曪紵鏈枃涓嬮潰鐨勭瘒騫呭皢璇︾粏浠嬬粛濡備綍鎵╁睍 Eclipse 鐨勮彍鍗曞姛鑳斤紝浣胯鑰呮繁鍏ヤ簡瑙?Eclipse 鐨勮彍鍗曞姛鑳斤紝騫惰兘澶熷紑鍙戝叿鏈夎繖浜涜彍鍗曠殑搴旂敤紼嬪簭銆傚洜姝わ紝蹇呴』鎺屾彙涓夋柟闈㈢殑鍐呭錛氳彍鍗曠綾伙紝鑿滃崟鐨勬墿灞曠偣錛岃彍鍗曟帶鍒訛紙鏄劇ず / 闅愯棌鎴栧惎鐢?/ 紱佺敤鑿滃崟欏癸級銆備笅闈粠姒傚康涓婁粙緇嶈繖涓夋柟闈㈠唴瀹癸紝涓嬩竴灝忚妭灝嗕細榪涜璇︾粏浠嬬粛銆?/p>

銆銆鑿滃崟縐嶇被

銆銆姝e鍓嶉潰鎵璁插埌鐨勶紝Eclipse 鐨勮彍鍗曞寘鎷鍥捐彍鍗曪紝涓昏彍鍗曞強涓婁笅鏂囪彍鍗曚笁涓綾匯?/p>

銆銆鑿滃崟欏圭殑鎵╁睍鐐?/p>

銆銆Eclipse 鎻愪緵浜嗕袱縐嶆墿灞曠偣渚涚敤鎴鋒坊鍔犺彍鍗曢」鍒扮浉搴旂殑浣嶇疆銆傝繖涓ょ鎵╁睍鐐逛負 org.eclipse.ui.commands錛堟湰鏂囩畝縐頒負 Commands 鏂瑰紡錛夊拰 org.eclipse.ui.actionSets錛堟湰鏂囩畝縐頒負 Actions 鏂瑰紡錛夈侫ctions 鏂瑰紡涓虹晫闈笂涓嶅悓鍖哄煙鐨勮〃鐜版柟寮忔彁渚涗簡鐩稿簲鐨勬墿灞曠偣錛屽茍涓旀病鏈夊垎紱誨叾鐣岄潰琛ㄧ幇鍜屽唴鍦ㄥ疄鐜般傛伆鎭扮浉鍙嶏紝Commands 鏂瑰紡閫氳繃涓夋鏈夋晥鐨勮揪鍒扮晫闈㈣〃鐜板拰鍐呴儴瀹炵幇鐨勫垎紱伙細棣栧厛錛岄氳繃 org.eclipse.ui.commands 鎵╁睍鐐瑰垱寤哄懡浠ゅ拰綾誨埆錛圕ategory錛夛紝騫朵笖鍙互鎶婃煇浜涘懡浠ゆ斁鍦ㄤ竴涓被鍒紙Category錛変腑錛涚劧鍚庯紝閫氳繃 org.eclipse.ui.menus 鎸囧畾鍛戒護鍑虹幇鍦ㄧ晫闈㈢殑鍝釜鍖哄煙錛堣鍥捐彍鍗?/ 涓昏彍鍗?/ 涓婁笅鏂囪彍鍗曪級錛涙渶鍚庨氳繃 org.eclipse.ui.handlers 鎸囧畾鍛戒護鐨勫疄鐜般傚洜姝わ紝Eclipse 鎺ㄨ崘鏂板紑鍙戠殑鎻掍歡浣跨敤 Commands 鏉ュ垱寤烘偍鐨勭晫闈㈣彍鍗曘傚綋鐒訛紝鐢變簬 Actions 鍦ㄧ幇鏈夌殑鎻掍歡涓敤寰楁瘮杈冨錛屽鏋滄垜浠渶瑕佹墿灞曟垨鍩轟簬涔嬪墠鐨勬彃浠跺紑鍙戯紝涔熼渶瑕佸鍏惰繘琛屼簡瑙c傞櫎姝や箣澶栵紝閽堝涓婁笅鏂囪彍鍗曪紝铏界劧 Commands 鍜?Actions 鏂瑰紡鍧囧彲浠ュ垱寤轟笂涓嬫枃鑿滃崟錛屼絾鏄?Eclipse 榪樻彁渚涗簡鍙﹀涓縐嶅垱寤轟笂涓嬫枃鑿滃崟鐨勬墿灞曠偣 org.eclipse.ui.popupMenus錛堟湰鏂囩畝縐頒負 popupMenus 鏂瑰紡錛夛紝鏈枃灝嗗氨榪欎笁縐嶆墿灞曠偣鍋氳緇嗙殑浠嬬粛銆?/p>

銆銆鑿滃崟鎺у埗

銆銆鑿滃崟鎺у埗鏄竴涓潪甯稿父瑙佺殑鍔熻兘錛屼緥濡傦紝闅忕潃閫夊畾鐨勫唴瀹規垨褰撳墠紿楀彛鐨勪笉鍚岋紝鑿滃崟涓殑鑿滃崟欏逛細鏈夌浉搴旂殑鍙樺寲錛堟樉紺?/ 闅愯棌鎴栧惎鐢?/ 紱佺敤鑿滃崟欏癸級錛屽洜姝わ紝濡備綍鎺у埗鑿滃崟鏄彃浠跺紑鍙戜漢鍛樺繀欏繪帉鎻$殑鐭ヨ瘑銆侲clipse 涓鴻彍鍗曟帶鍒舵彁渚涗簡涓ょ鏂規硶錛屼竴縐嶆槸閫氳繃鎵╁睍鐐癸紱鍙︿竴縐嶆槸閫氳繃 API 鐨勬柟寮忕紪鍐欑▼搴忔帶鍒躲?/p>

銆銆Eclipse 鑿滃崟鍔熻兘鍙婂叾鎵╁睍鐐?/p>

銆銆鑷蟲錛屾垜浠 Eclipse 鑿滃崟鏈変簡鎰熻鐨勮璇嗐傜敱涓婁竴鑺傛垜浠彲鐭ワ紝瑕佹繁鍏ョ悊瑙?Eclipse 鑿滃崟鍔熻兘錛屾垜浠渶瑕佷粠涓変釜鏂歸潰鍘繪帉鎻★細鑿滃崟縐嶇被錛岃彍鍗曠殑鎵╁睍鐐瑰拰鑿滃崟鎺у埗銆備笅闈㈠皢榪涜璇︾粏璁茶堪銆?/p>

銆銆鑿滃崟縐嶇被

銆銆閽堝鍚勭鑿滃崟錛孍clipse 鎻愪緵浜嗙浉搴旂殑鎵╁睍鐐癸紝鍥犳錛屽紑鍙戜漢鍛樺彲浠ラ氳繃榪欎簺鎵╁睍鐐規妸鑿滃崟鏀懼埌鐣岄潰鐨勪笉鍚屽尯鍩燂紝璇︾粏鍐呭璇峰弬鑰?2.2 灝忚妭銆?/p>

銆銆鑿滃崟鐨勬墿灞曠偣

銆銆瑙嗗浘鑿滃崟鐨勬墿灞曠偣

銆銆閲囩敤 Commands 鏂瑰紡鍒涘緩瑙嗗浘鑿滃崟錛岄渶瑕佸紩鍏?org.eclipse.ui.menus 鎵╁睍鐐癸紱鑰?Actions 鏂瑰紡闇瑕佸紩鍏?org.eclipse.ui.actionSets.

銆銆1銆佽鍥捐彍鍗曪紙Commands 鏂瑰紡錛夛細

銆銆MenuContribution locationURI = “[Scheme]:[id]?[argument-list]”

銆銆鍏朵腑錛孲cheme 涓鴻鑿滃崟欏瑰嚭鐜扮殑鍖哄煙錛宮enu 涓鴻鍥劇殑涓嬫媺鑿滃崟錛宼oolbar 涓鴻鍥劇殑宸ュ叿鏍忚彍鍗曪紱id 涓鴻彍鍗曞尯鍩?ID錛沘rgument-list 涓鴻鑿滃崟欏瑰嚭鐜板湪鎸囧畾鑿滃崟鐨勪綅緗?/p>

銆銆渚嬪錛氬湪 ProbelmView 鐨勪笅鎷夎彍鍗曞姞涓涓彍鍗曢」錛屽叾 MenuContribution 鐨?locationURI 搴斾負錛歮enu:org.eclipse.ui.views.ProblemView?after=additions錛涘湪 ProblemView 鐨勫伐鍏鋒爮鑿滃崟涓姞鍏ヤ竴涓彍鍗曢」錛屽叾 locationURI 搴斾負錛歵oolbar:org.eclipse.ui.views.ProblemView?after=additions銆?/p>

銆銆2銆佽鍥捐彍鍗曪紙Actions 鏂瑰紡錛夛細

銆銆閲囩敤 Actions 鏂瑰紡鍒涘緩鑿滃崟錛岄渶瑕佸紩鍏?org.eclipse.ui.actionSets 鎵╁睍鐐癸紝騫墮氳繃璁懼畾 action 鐨?menubarPath 鎸囧畾涓嬫媺鑿滃崟 / 鑿滃崟欏瑰嚭鐜扮殑浣嶇疆錛涢氳繃璁懼畾 action 鐨?toolbarPath 璁懼畾宸ュ叿鏍忚彍鍗?/ 鑿滃崟欏瑰嚭鐜扮殑浣嶇疆銆?/p>

銆銆渚嬪錛屾坊鍔犱竴涓笅鎷夎彍鍗曢」鍒?Problems 瑙嗗浘涓紝鍏?menubarPath 搴斾負錛?/p>

銆銆org.eclipse.ui.views.ProblemView/additions

銆銆涓昏彍鍗曠殑鎵╁睍鐐?/p>

銆銆1銆佷富鑿滃崟錛圕ommands 鏂瑰紡錛?/p>

銆銆閫氳繃 Commands 鏂瑰紡鎶婅彍鍗曢」娣誨姞鍒頒富鑿滃崟鍙婂叾宸ュ叿鏍忎笂錛屽拰瑙嗗浘鑿滃崟涓鏍鳳紝涔熸槸閫氳繃鎵╁睍鐐?org.eclipse.ui.menus 瀹炵幇錛岄渶瑕佽瀹氬叾 menuContribution 鐨?locationURI銆?/p>

銆銆渚嬪錛屾坊鍔犱竴涓彍鍗曪紙鑿滃崟鍙互鍖呭惈鑻ュ共涓彍鍗曢」錛夊埌涓昏彍鍗曚竴鏍忎腑錛屽叾 locationURI 涓猴細

銆銆menu:org.eclipse.ui.main.menu?after=additions

銆銆娣誨姞涓涓彍鍗曞埌宸ュ叿鏍忎箣涓紝鍏?locationURI 涓猴細

銆銆toolbar:org.eclipse.ui.main.toolbar?after=additions

銆銆褰撶劧錛屾垜浠篃鍙互鎶婅彍鍗曢」娣誨姞鍒板凡緇忓瓨鍦ㄧ殑鑿滃崟褰撲腑錛屼緥濡傛坊鍔犱竴涓彍鍗曢」鍒?Eclipse 鐨?Search 涓昏彍鍗曞綋涓紝鍏?locationURI 涓猴細

銆銆menu:org.eclipse.search.menu?dialogGroup

銆銆2銆佷富鑿滃崟錛圓ctions 鏂瑰紡錛?/p>

銆銆閫氳繃 Actions 鏂瑰紡鎶婅彍鍗曢」娣誨姞鍒頒富鑿滃崟鍙婂叾宸ュ叿鏍忎笂錛屽拰瑙嗗浘鑿滃崟涓鏍鳳紝涔熸槸閫氳繃鎵╁睍鐐?org.eclipse.ui.actionSets 瀹炵幇錛岄渶瑕佽瀹?action 鐨?menubarPath 鍜?toolbarPath 瀹炵幇銆?/p>

銆銆渚嬪錛屾坊鍔犱竴涓彍鍗曢」鍒?Eclipse 鐨?Search 涓昏彍鍗曚腑錛屽叾 menubarPath 搴斾負錛?/p>

銆銆org.eclipse.search.menu/dialogGroup

銆銆娉ㄦ剰錛氬鏋滈噰鐢ㄤ笂榪版柟寮忔坊鍔犱竴涓彍鍗曢」鍒?Search 涓昏彍鍗曪紝褰撴垜浠繍琛屾椂騫舵病鏈夊嚭鐜版坊鍔犵殑鑿滃崟欏癸紝榪欐椂鍊欓渶瑕佹崲涓涓?workspace錛屽叾鍘熷洜鏄?Eclipse 緙撳瓨浜嗕笌鍏剁浉鍏崇殑鏌愪簺淇℃伅鍦?workspace 褰撲腑銆?/p>

銆銆涓婁笅鏂囪彍鍗曠殑鎵╁睍鐐?/p>

銆銆涓婁笅鏂囪彍鍗曢櫎浜嗛氳繃 Commands 鍜?Actions 鏂瑰紡娣誨姞錛岃繕鍙互浣跨敤鎵╁睍鐐?org.eclipse.ui.popupMenus 鏂瑰紡娣誨姞錛屼笅闈㈠垎鍒繘琛屼粙緇嶃?/p>

銆銆1銆佷笂涓嬫枃鑿滃崟錛圕ommands 鏂瑰紡錛?/p>

銆銆Commands 鏂瑰紡涓庢坊鍔犺鍥捐彍鍗曞拰涓昏彍鍗曠殑鏂瑰紡涓鏍鳳紝閫氳繃璁懼畾鍏?menuContribution 鐨?locationURI 鏉ュ疄鐜般?/p>

銆銆渚嬪錛屾坊鍔犱竴涓笂涓嬫枃鑿滃崟鍒?Problems 瑙嗗浘涓紝鍏?locationURI 涓猴細

銆銆popup:org.eclipse.ui.views.ProblemView?after=additions銆?/p>

銆銆濡傛灉鎴戜滑鎯寵鏌愪釜涓婁笅鏂囪彍鍗曢」鍑虹幇鍦ㄤ換浣曞尯鍩燂紝鍒欏彲浠ヤ嬌鐢ㄤ笅闈㈢殑 locationURI錛?/p>

銆銆popup:org.eclipse.ui.popup.any?after=additions

銆銆2銆佷笂涓嬫枃鑿滃崟錛圓ctions 鏂瑰紡錛?/p>

銆銆Actions 鏂瑰紡娌℃湁鐩存帴鎻愪緵鎵╁睍鐐規坊鍔犱笂涓嬫枃鑿滃崟錛屼絾鏄垜浠彲浠ラ氳繃緙栫▼鐨勬柟寮忓疄鐜幫紝濡備笅浠g爜娓呭崟 1 涓?TreeViewer 娣誨姞涓婁笅鏂囪彍鍗曪紝閫氳繃 IMenuManager 鐨?add 鏂規硶娣誨姞 actions銆?/p>

娓呭崟 1. 閫氳繃 Actions 鏂瑰紡緙栫▼瀹炵幇娣誨姞涓婁笅鏂囪彍鍗?/p>

銆private銆void銆hookContextMenu()銆{銆
銆銆IMenuManager銆fMenuMgr銆=銆new銆MenuManager(“#PopupMenu”);銆
銆銆fMenuMgr.setRemoveAllWhenShown(true);銆
銆銆//銆娣誨姞銆Actions銆
銆銆fMenuMgr.add(action銆…銆)銆
銆銆fMenuMgr.createContextMenu(treeViewer.getControl());銆
銆銆treeViewer.getControl().setMenu(fMenu);銆
銆銆getSite().registerContextMenu(fMenuMgr,銆treeViewer);銆
銆}銆

銆銆3銆佷笂涓嬫枃鑿滃崟錛坧opupMenus 鏂瑰紡錛?/p>

銆銆閫氳繃 popupMenus 鎵╁睍鐐瑰疄鐜頒笂涓嬫枃鑿滃崟錛岄渶瑕佽瀹?objectContribution 鐨?objectClass 灞炴ф妸涓婁笅鏂囪彍鍗曟坊鍔犲埌鐩稿簲鐨勫尯鍩熴?/p>

銆銆渚嬪錛屽鏋滄垜浠兂褰撶敤鎴風偣鍑?Eclipse 涓殑璧勬簮鏃訛紝寮瑰嚭鐨勪笂涓嬫枃鑿滃崟鍖呮嫭鏌愪釜鑿滃崟欏癸紝鎴戜滑鍙互璁懼畾 objectClass 灞炴т負錛?/p>

銆銆org.eclipse.core.resources.IResource

銆銆閫氳繃 Commands 鏂瑰紡鍒涘緩鑿滃崟欏?/p>

銆銆閫氳繃 Commands 鏂瑰紡鍒涘緩鑿滃崟欏癸紝棣栧厛闇瑕佸垱寤?Command錛岄氳繃鎵╁睍鐐?org.eclipse.ui.commands錛岀劧鍚庢垜浠彲浠ユ妸榪欎釜 Command 鏀懼埌浠諱綍鍖哄煙錛屼笂涓灝忚妭宸茬粡璁插埌錛岄氳繃 org.eclipse.ui.menus 鎵╁睍鐐圭‘瀹氳彍鍗曞垱寤虹殑鍖哄煙錛屾渶鍚庨氳繃鎵╁睍鐐?org.eclipse.ui.handlers 瀹氫箟榪欎釜 command 鐨勫叿浣撹涓恒?/p>

銆銆鍦ㄥ垱寤?Command 鏃訛紝鎴戜滑鍙互鍏堝垱寤轟竴涓?Category錛屽茍鎶婄浉鍏崇殑涓浜涘懡浠ゆ斁鍒拌繖涓?Category 涓紝榪欐牱鏈夊埄浜庣鐞嗐備唬鐮佹竻鍗?2 鍒涘緩涓涓?Command(“Show in Glossary Explorer”)錛屽茍鏀懼埌涓涓?Category 涓紝鐒跺悗鎶婅 Command 鏀懼埌 BGSearchResultView 瑙嗗浘鐨勪笂涓嬫枃鑿滃崟涓紝鏈鍚庨氳繃鎵╁睍 org.eclipse.ui.handlers 瀹氫箟璇?Command 鐨勫疄鐜扮被銆?/p>

娓呭崟 2. 閫氳繃 Commands 鏂瑰紡娣誨姞鑿滃崟欏?/p>

銆<!--銆娣誨姞銆command銆-->銆
銆<extension銆
銆銆銆point="org.eclipse.ui.commands">銆
銆銆<category銆
銆銆銆description="Business銆Glossary"銆
銆銆銆id="com.ibm.bg.ui.commands.category"銆
銆銆銆name="%category.BusinessGlossary.name">銆
銆銆</category>銆
銆銆<command銆
銆銆銆categoryId="com.ibm.bg.ui.commands.category"銆
銆銆銆description="Show銆in銆Glossary銆Explorer"銆
銆銆銆id="com.ibm.bg.ui.commands.BGShowInBrowser"銆
銆銆銆name="%command.ShowInGE.name">銆
銆銆</command>銆
銆</extension>銆
銆<!--銆鎶娿Command銆鏀懼埌鐣岄潰鐨勫搴斿尯鍩熴-->銆
銆<extension銆
銆銆銆銆point="org.eclipse.ui.menus">銆
銆銆<menuContribution銆locationURI=銆
銆銆"popup:com.ibm.bg.internal.ui.search.BGSearchResultView?after=additions">銆
銆銆銆<command銆
銆銆銆銆銆銆commandId="com.ibm.bg.ui.commands.BGShowInBrowser"銆
銆銆銆銆銆銆style="push"銆
銆銆銆銆銆銆tooltip="%command.ShowInGE.tooltip">銆
銆銆銆</command>銆
銆銆</menuContribution>銆
銆</extension>銆
銆<!--銆瀹氫箟銆command銆鐨勫疄鐜扮被銆-->銆
銆<extension銆
銆銆銆point="org.eclipse.ui.handlers">銆
銆銆<handler銆
銆銆銆銆銆class="com.ibm.bg.internal.ui.handlers.BGShowInBrowser"銆
銆銆銆銆銆commandId="com.ibm.bg.ui.commands.BGShowInBrowser">銆
銆銆</handler>銆
銆</extension>銆

銆銆閫氳繃 Actions 鏂瑰紡鍒涘緩鑿滃崟欏?/p>

銆銆姝e鍓嶉潰璁插埌錛孉ctions 鏂瑰紡娌℃湁鍒嗙鐣岄潰鐨勮〃鐜板拰鍐呴儴瀹炵幇錛屽洜姝わ紝鎵鏈夎繖浜涘潎閫氳繃 action 鏉ュ畬鎴愩傚涓嬩唬鐮佹竻鍗?3 涓烘坊鍔犱竴涓?Search 鑿滃崟欏瑰埌 Eclipse 鐨?Search 涓昏彍鍗曪紙閫氳繃 action 鐨?menubarPath 鎸囧畾錛変腑錛屽叾涓?class 瀵瑰簲鐨勫間負璇?Action 鐨勫疄鐜扮被錛岃綾婚渶瑕佸疄鐜版帴鍙?IWorkbenchWindowActionDelegate銆?/p>

娓呭崟 3. 閫氳繃 Actions 鏂瑰紡娣誨姞鑿滃崟欏?/p>

銆<extension銆
銆銆銆point="org.eclipse.ui.actionSets">銆
銆銆<actionSet銆
銆銆銆銆銆id="com.ibm.bg.ui.workbenchActionSet"銆
銆銆銆銆銆label="%category.name.0"銆
銆銆銆銆銆visible="true">銆
銆銆銆<action銆
銆銆銆銆銆銆class="com.ibm.bg.internal.ui.handlers.BGSearchHandler"銆
銆銆銆銆銆銆definitionId="com.ibm.bg.ui.commands.BGSearch"銆
銆銆銆銆銆銆icon="icons/search.png"銆
銆銆銆銆銆銆id="com.ibm.bg.ui.commands.BGSearch"銆
銆銆銆銆銆銆label="%action.searchGlossayInMainMenu.label"銆
銆銆銆銆銆銆menubarPath="org.eclipse.search.menu/dialogGroup"銆
銆銆銆銆銆銆style="push">銆
銆銆銆</action>銆
銆銆</actionSet>銆
銆</extension>銆

銆銆閫氳繃 popupMenus 鏂瑰紡鍒涘緩鑿滃崟欏?/p>

銆銆popupMenus 鏂瑰紡鍒涘緩涓婁笅鏂囪彍鍗曢」涔熸槸閫氳繃 action 鏉ュ疄鐜幫紝涓嬮潰渚嬪瓙涓烘坊鍔犱竴涓彍鍗曢」鍒扮敤鎴峰彸鍑?IGraphicalEditPart 瀵硅薄鏃跺脊鍑虹殑涓婁笅鏂囪彍鍗曪紝閫氳繃 menubarPath 鎸囧畾璇?Action 鍑虹幇鐨勫尯鍩燂紝閫氳繃 class 鎸囧畾璇?action 鐨勫疄鐜扮被錛岃綾婚渶瑕佸疄鐜版帴鍙?IObjectActionDelegate銆?/p>

娓呭崟 4. 閫氳繃 popupMenus 鏂瑰紡娣誨姞鑿滃崟欏?/p>

銆<extension銆
銆銆銆point="org.eclipse.ui.popupMenus">銆
銆銆<objectContribution銆
銆銆銆銆銆adaptable="false"銆
銆銆銆銆銆id="com.ibm.bg.uml.objectContributions.BGAssignToGlossary"銆
銆銆銆銆銆objectClass="org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart">銆
銆銆銆<action銆
銆銆銆銆銆銆class="com.ibm.bg.internal.uml.actions.BGAssignToGlossary"銆
銆銆銆銆銆銆enablesFor="+"銆
銆銆銆銆銆銆icon="icons/assign.png"銆
銆銆銆銆銆銆id="com.ibm.bg.internal.uml.actions.BGAssignToGlossary"銆
銆銆銆銆銆銆label="%BGAssignToGlossary.item"銆
銆銆銆銆銆銆menubarPath="com.ibm.bg.uml.popupMenuGroup">銆
銆銆銆</action>銆
銆銆</objectContribution>銆
銆</extension>銆

銆銆鑿滃崟鎺у埗

銆銆瑙嗗浘鑿滃崟鐨勬帶鍒朵富瑕佸寘鎷惎鐢?/ 紱佺敤錛屾樉紺?/ 闅愯棌鑿滃崟銆?/p>

銆銆閫氳繃 Command 鏂瑰紡鍒涘緩鐨勮彍鍗曪紝鍙互閫氳繃 org.eclipse.ui.commands 鐨?visibleWhen 灞炴ф帶鍒惰彍鍗曠殑闅愯棌鍜屾樉紺猴紝閫氳繃 org.eclipse.ui.handlers 鐨?activewhen 鎴?enabledWhen 鎺у埗鑿滃崟鐨勫惎鐢ㄦ垨紱佺敤銆?/p>

銆銆閫氳繃 Actions 鏂瑰紡鍒涘緩鐨勮彍鍗曪紝鍙互閫氳繃 action 鐨?enablement 灞炴ф帶鍒惰彍鍗曠殑鍚敤 / 紱佺敤銆?/p>

銆銆閫氳繃 popupMenus 鏂瑰紡鍒涘緩鐨勮彍鍗曪紝鍙互閫氳繃 objectContribution 鐨?visibility 鍜?enablement 鏉ヨ緗 objectContribution 涓嬬殑 action 鐨勬樉紺?/ 闅愯棌鍜屽惎鐢?/ 紱佺敤錛屾垜浠篃鍙互璁劇疆 action 鐨?enablement 鏉ユ帶鍒惰鑿滃崟鐨勫惎鐢?/ 紱佺敤銆?/p>

銆銆榪欓噷涓嶈緇嗚榪?enablement錛寁isibleWhen 鍜?enabledWhen 鐨勫弬鏁板強濡備綍璁劇疆錛岃鑰呭彲浠ュ弬鑰冪涓夎妭鐨勪緥瀛愬拰鏈枃鐨勫弬鑰冩枃鐚?/p>

銆銆緙栫▼瀹炶返

銆銆鏈枃灝嗙粨鍚堝墠涓よ妭璁插埌鐨勭煡璇嗭紝浠ヤ緥瀛愮殑褰㈠紡璇存槑濡備綍鍒涘緩騫朵笖鎺у埗鑿滃崟銆傞鍏堝垱寤轟竴涓鍥撅紙Menu Example錛夛紝鐒跺悗鍒嗗埆閫氳繃 Commands錛孉ctions 鍜?popupMenus 鏂瑰紡鍒涘緩鑻ュ共涓彍鍗曪紝騫舵坊鍔犵浉搴旂殑鑿滃崟鎺у埗鐐廣?/p>

銆銆鍒涘緩 Menu Example 瑙嗗浘

銆銆鎵╁睍 org.eclipse.views 鍒涘緩“Menu Example”瑙嗗浘錛屽涓嬩唬鐮佹竻鍗?5 涓哄垱寤鴻鍥劇殑 xml 浠g爜銆?/p>

娓呭崟 5. 鎵╁睍 org.eclipse.ui.views 鍒涘緩瑙嗗浘

銆<extension銆
銆銆銆point="org.eclipse.ui.views">銆
銆銆<category銆
銆銆銆銆銆id="com.free.menu.category"銆
銆銆銆銆銆name="Menu銆Example銆View">銆
銆銆</category>銆
銆銆<view銆
銆銆銆銆銆category="com.free.menu.category"銆
銆銆銆銆銆class="com.free.menu.view.MenuExplorer"銆
銆銆銆銆銆id="com.free.menu.view.MenuExplorer"銆
銆銆銆銆銆name="Menu銆Explorer"銆
銆銆銆銆銆restorable="true">銆
銆銆</view>銆
銆</extension>銆

銆銆鍒涘緩 Commands

銆銆閲囩敤 Command 鏂瑰紡鍒涘緩“Menu Example”涓昏彍鍗曪紙鍖呭惈 AngryCommand 鍜?JokeCommand 涓や釜鑿滃崟欏癸級錛屽茍涓斿熀浜庤繖涓や釜鑿滃崟欏瑰垱寤轟簡 Menu Example 瑙嗗浘鐨勪笅鎷夎彍鍗曞拰宸ュ叿鏍忚彍鍗曪紝鍙婂叾 TreeViewer 鐨勪笂涓嬫枃鑿滃崟銆?/p>

銆銆濡備笅浠g爜娓呭崟 6 涓烘墿灞?org.eclipse.ui.commands 鍒涘緩 Menu Example 鍛戒護鍜岀被鍒紝騫朵笖鍖呭惈涓や釜鍛戒護錛欽oke Command 鍜?Angry Command銆?/p>

娓呭崟 6. 鎵╁睍 org.eclipse.ui.commands 鍒涘緩鍛戒護

銆<extension銆
銆銆銆point="org.eclipse.ui.commands">銆
銆銆<category銆
銆銆銆銆銆id="com.free.menu.category"銆
銆銆銆銆銆name="Menu銆Example">銆
銆銆</category>銆
銆銆<command銆
銆銆銆銆銆categoryId="com.free.menu.category"銆
銆銆銆銆銆id="com.free.menu.commands.jokeCommand"銆
銆銆銆銆銆name="Joke銆Command">銆
銆銆</command>銆
銆銆<command銆
銆銆銆銆銆categoryId="com.free.menu.category"銆
銆銆銆銆銆id="com.free.menu.commands.angryCommand"銆
銆銆銆銆銆name="Angry銆Command">銆
銆銆</command>銆
銆</extension>銆

銆銆鍏寵仈 Commands 鍒頒富鑿滃崟

銆銆濡備笅浠g爜娓呭崟 7 涓烘墿灞?org.eclipse.ui.menus錛屽茍鍩轟簬鍓嶉潰鍒涘緩鐨?Comands錛屾坊鍔犱竴涓富鑿滃崟 Menu Example錛屽茍涓斿寘鍚?Joke Command 鍜?Angry Command 鑿滃崟欏廣?/p>

娓呭崟 7. 鍒涘緩 Menu Example 涓昏彍鍗?/p>

銆<menuContribution銆
銆銆銆locationURI="menu:org.eclipse.ui.main.menu?after=additions">銆
銆銆<menu銆
銆銆銆id="com.free.menu.MenuExample"銆
銆銆銆銆銆label="Menu銆Example">銆
銆銆銆<command銆
銆銆銆銆銆銆commandId="com.free.menu.commands.jokeCommand"銆
銆銆銆銆銆銆style="push">銆
銆銆銆</command>銆
銆銆銆<command銆
銆銆銆銆銆銆commandId="com.free.menu.commands.angryCommand"銆
銆銆銆銆銆銆style="push">銆
銆銆銆</command>銆
銆銆</menu>銆
銆</menuContribution>銆

銆銆Commands 鐨勫疄鐜扮被

銆銆濡備笅浠g爜娓呭崟 9 鎵紺烘墿灞?org.eclipse.ui.handlers 涓?Joke Command 鍜?Angry Command 鍒涘緩浜嬩歡澶勭悊綾伙紝鍏朵腑 Joke Command 閫氳繃 enabledWhen 灞炴ф帶鍒惰鑿滃崟欏規槸鍚﹀惎鐢紝褰撴垜浠悓鏃墮夋嫨浜嗕袱涓璞℃椂 Joke Command 澶勪簬鍚敤鐘舵侊紝鍚﹀垯涓虹鐢ㄣ?/p>

娓呭崟 9. 鎵╁睍 org.eclipse.ui.handlers 涓?Commands 鍒涘緩瀹炵幇綾?/p>

銆<extension銆
銆銆銆point="org.eclipse.ui.handlers">銆
銆銆<handler銆
銆銆銆銆銆class="com.free.menu.actions.JokeCommand"銆
銆銆銆銆銆commandId="com.free.menu.commands.jokeCommand">銆
銆銆銆<enabledWhen>銆
銆銆銆銆銆<count銆
銆銆銆銆銆銆銆銆value="2">銆
銆銆銆銆銆</count>銆
銆銆銆</enabledWhen>銆
銆銆</handler>銆
銆銆<handler銆
銆銆銆銆銆class="com.free.menu.actions.AngryCommand"銆
銆銆銆銆銆commandId="com.free.menu.commands.angryCommand">銆
銆銆</handler>銆
銆</extension>銆

銆銆鍒涘緩 Action 騫跺叧鑱斿埌 Eclipse 鐨?Search 涓昏彍鍗?/p>

銆銆閲囩敤 Actions 鏂瑰紡鍦?Eclipse 鐨勪富鑿滃崟 Search 涓坊鍔犲垱寤鴻彍鍗曢」 SmileAction銆傛墿灞?org.eclipse.ui.actionSets 鍦?Eclipse 鐨勪富鑿滃崟 Search 涓坊鍔犱竴涓彍鍗曢」 Smile Action銆傚涓嬩唬鐮佹竻鍗?10 鎵紺哄垱寤鴻 action 騫舵坊鍔犲埌 search 涓昏彍鍗曪紝鍙湁褰撴垜浠夋嫨鑷沖皯涓涓璞℃椂錛堣緗?enablesFor 灞炴т負“+”錛夛紝璇ヨ彍鍗曢」鎵嶅浜庡惎鐢ㄧ姸鎬併?/p>

娓呭崟 10. 閫氳繃 Actions 鏂瑰紡鍒涘緩鑿滃崟欏?/p>

銆<extension銆
銆銆銆point="org.eclipse.ui.actionSets">銆
銆銆<actionSet銆
銆銆銆銆銆id="com.free.menu.actionSet.MenuExample"銆
銆銆銆銆銆label="Menu銆Example"銆
銆銆銆銆銆visible="true">銆
銆銆銆<action銆
銆銆銆銆銆銆class="com.free.menu.actions.SmileAction"銆
銆銆銆銆銆銆enablesFor="+"銆
銆銆銆銆銆銆icon="icons/searchres.gif"銆
銆銆銆銆銆銆id="com.free.menu.actions.smileAction"銆
銆銆銆銆銆銆label="Smile銆Action"銆
銆銆銆銆銆銆menubarPath="org.eclipse.search.menu/dialogGroup"銆
銆銆銆銆銆銆style="push">銆
銆銆銆</action>銆
銆銆</actionSet>銆
銆</extension>銆

銆銆pupupMenus 鏂瑰紡鍒涘緩 Action 騫跺叧鑱斿埌 IResource 璧勬簮鐨勪笂涓嬫枃鑿滃崟

銆銆鎵╁睍 org.eclipse.ui.popupMenus 鍒涘緩鑿滃崟“Menu Example”錛岃鑿滃崟鍖呭惈涓涓彍鍗曢」 HelloAction銆傚綋鎴戜滑鍦?Eclipse 浠諱綍鍖哄煙鍙沖嚮 org.eclipse.core.resources.IResource 璧勬簮鏃跺脊鍑虹殑涓婁笅鏂囪彍鍗曚腑浼氬嚭鐜?#8220;Menu Example”鑿滃崟銆傚涓嬩唬鐮佹竻鍗?11 涓哄垱寤鴻涓婁笅鏂囪彍鍗曠殑 xml 浠g爜銆?/p>

娓呭崟 11. popupMenus 鏂瑰紡鍒涘緩涓婁笅鏂囪彍鍗?/p>

銆<extension銆
銆銆銆point="org.eclipse.ui.popupMenus">銆
銆銆<objectContribution銆
銆銆銆銆銆adaptable="true"銆
銆銆銆銆銆id="com.free.menu.popupMenu"銆
銆銆銆銆銆objectClass="org.eclipse.core.resources.IResource">銆
銆銆銆<menu銆
銆銆銆銆銆銆label="Menu銆Example"銆
銆銆銆銆銆銆path="additions"銆
銆銆銆銆銆銆id="com.free.menu.popupSubMenu">銆
銆銆銆銆銆<separator銆
銆銆銆銆銆銆銆銆name="additions">銆
銆銆銆銆銆</separator>銆
銆銆銆</menu>銆
銆銆銆<action銆
銆銆銆銆銆銆label="Hello銆Action"銆
銆銆銆銆銆銆class="com.free.menu.popup.actions.HelloAction"銆
銆銆銆銆銆銆menubarPath="com.free.menu.popupSubMenu/additions"銆
銆銆銆銆銆銆enablesFor="1"銆
銆銆銆銆銆銆id="com.free.menu.newAction">銆
銆銆銆</action>銆
銆銆</objectContribution>銆
銆</extension>銆

銆銆pupupMenus 鏂瑰紡鍒涘緩 Action 騫跺叧鑱斿埌 IResource 璧勬簮鐨勪笂涓嬫枃鑿滃崟

銆銆鎵╁睍 org.eclipse.ui.popupMenus 鍒涘緩鑿滃崟欏?GreetAction 鍜?CryAction錛屽綋鎴戜滑鍙沖嚮 Menu Example 瑙嗗浘涓殑 TreeViewer 鑺傜偣鏃跺脊鍑恒傚涓嬩唬鐮佹竻鍗?12 鎵紺烘墿灞?org.eclipse.ui.popupMenus 涓?Menu Example 瑙嗗浘鍒涘緩 GreetAction 鍜?CryAction 涓婁笅鏂囪彍鍗曢」銆備嬌鐢?visiblity 鐨?objectState 灞炴ф帶鍒惰彍鍗曢」鐨勫彲瑙佺姸鎬侊紝浣跨敤璇ュ睘鎬ц姹傚叾閫夋嫨鐨勫璞″疄鐜頒簡 org.eclipse.ui.IActionFilter 鎺ュ彛錛屽叿浣撳彲鍙傝 Person 綾葷殑瀹炵幇銆?/p>

娓呭崟 12. 鎵╁睍 org.eclipse.ui.popupMenus 鍒涘緩鑿滃崟

銆<extension銆
銆銆銆point="org.eclipse.ui.popupMenus">銆
銆銆<objectContribution銆
銆銆銆銆銆adaptable="false"銆
銆銆銆銆銆id="com.free.menu.views.popupMenu"銆
銆銆銆銆銆objectClass="com.free.menu.model.Person">銆
銆銆銆<action銆
銆銆銆銆銆銆class="com.free.menu.actions.GreetAction"銆
銆銆銆銆銆銆enablesFor="+"銆
銆銆銆銆銆銆id="com.free.menu.actions.greetAction"銆
銆銆銆銆銆銆label="Greet銆Action"銆
銆銆銆銆銆銆menubarPath="additions">銆
銆銆銆</action>銆
銆銆銆<visibility>銆
銆銆銆銆銆<objectState銆
銆銆銆銆銆銆銆銆name="firstName"銆
銆銆銆銆銆銆銆銆value="Dan">銆
銆銆銆銆銆</objectState>銆
銆銆銆</visibility>銆
銆銆</objectContribution>銆
銆</extension>銆
銆<extension銆
銆銆銆point="org.eclipse.ui.popupMenus">銆
銆銆<objectContribution銆
銆銆銆銆銆adaptable="false"銆
銆銆銆銆銆id="com.free.menu.views.popupMenu2"銆
銆銆銆銆銆objectClass="com.free.menu.model.Person">銆
銆銆銆<action銆
銆銆銆銆銆銆class="com.free.menu.actions.CryAction"銆
銆銆銆銆銆銆enablesFor="+"銆
銆銆銆銆銆銆id="com.free.menu.actions.cryAction"銆
銆銆銆銆銆銆label="Cry銆Action"銆
銆銆銆銆銆銆menubarPath="additions">銆
銆銆銆銆銆<enablement>銆
銆銆銆銆銆銆<objectState銆
銆銆銆銆銆銆銆銆銆name="firstName"銆
銆銆銆銆銆銆銆銆銆value="David">銆
銆銆銆銆銆銆</objectState>銆
銆銆銆銆銆</enablement>銆
銆銆銆</action>銆
銆銆銆<visibility>銆
銆銆銆銆銆<objectState銆
銆銆銆銆銆銆銆銆name="lastName"銆
銆銆銆銆銆銆銆銆value="Rubel">銆
銆銆銆銆</objectState>銆
銆銆銆</visibility>銆
銆銆</objectContribution>銆
銆</extension>銆

銆銆Menu Example 瑙嗗浘鐨勪唬鐮佸疄鐜扮被

銆銆濡備笅浠g爜娓呭崟 13 鎵紺轟負 Menu Example 瑙嗗浘鐨勪唬鐮侊紝璇ヨ鍥句腑鏈変竴涓?TreeViewer錛屽茍閫氳繃鍑芥暟 hookContextMenu 鎶婁笂涓嬫枃鑿滃崟鍏寵仈鍒?TreeViewer銆傚叾涓嚱鏁?viewMenuAction 鐢ㄤ簬鏇存柊鑿滃崟鐨勭姸鎬侊紝瀹冮鍏堣幏鍙栬鍥捐彍鍗曪紝鐒跺悗璋冪敤 IMenuManager 鐨?update 鏂規硶鏇存柊瀵瑰簲鑿滃崟欏圭殑鐘舵侊紝浠庤岃揪鍒版帶鍒惰彍鍗曠殑鐩殑銆?/p>

娓呭崟 13. Menu Example 瑙嗗浘浠g爜

銆public銆class銆MenuExplorer銆extends銆ViewPart銆{銆
銆銆private銆TreeViewer銆treeViewer;銆
銆銆private銆MenuManager銆fMenuMgr;銆
銆銆private銆Menu銆fMenu;銆
銆銆private銆static銆MenuExplorer銆fInstance銆=銆null;銆
銆銆public銆MenuExplorer()銆{銆
銆銆銆銆fInstance銆=銆this;銆
銆銆}銆
銆銆public銆static銆MenuExplorer銆getInstance(){銆
銆銆銆銆return銆fInstance;銆
銆銆}銆
銆銆public銆void銆createPartControl(Composite銆parent)銆{銆
銆銆銆銆treeViewer銆=銆new銆TreeViewer銆(parent,銆SWT.MULTI);銆
銆銆銆銆treeViewer.setLabelProvider(new銆PersonListLabelProvider());銆
銆銆銆銆treeViewer.setContentProvider(new銆PersonTreeContentProvider());銆
銆銆銆銆treeViewer.setInput(Person.example());銆
銆銆銆銆this.getSite().setSelectionProvider(treeViewer);銆
銆銆銆銆hookContextMenu();銆
銆銆銆銆fInstance銆=銆this;銆
銆銆銆銆銆
銆銆}銆
銆銆public銆void銆setViewMenuActionState(boolean銆state){銆銆銆銆銆
銆銆銆銆JokeCommand.setState(state);銆
銆銆銆銆viewMenuAction();銆
銆銆}銆
銆銆private銆void銆viewMenuAction()銆{銆
銆銆銆銆IActionBars銆bars=銆getViewSite().getActionBars();銆
銆銆銆銆final銆IMenuManager銆menu=銆bars.getMenuManager();銆銆銆
銆銆銆銆銆
銆銆銆銆UIOperation.asyncExecCommand(new銆Runnable(){銆
銆銆銆銆銆銆public銆void銆run()銆{銆
銆銆銆銆銆銆銆銆menu.update("com.free.menu.commands.jokeAction");銆
銆銆銆銆銆銆}銆銆銆銆銆銆銆
銆銆銆銆});銆銆銆銆銆
銆銆}銆
銆銆private銆void銆hookContextMenu()銆{銆
銆銆銆銆fMenuMgr銆=銆new銆MenuManager("#PopupMenu");銆
銆銆銆銆fMenuMgr.setRemoveAllWhenShown(true);銆
銆銆銆銆fMenuMgr.addMenuListener(new銆IMenuListener()銆{銆
銆銆銆銆銆銆public銆void銆menuAboutToShow(IMenuManager銆manager)銆{銆銆銆銆銆銆銆銆銆
銆銆銆銆銆銆}銆
銆銆銆銆});銆
銆銆銆銆fMenu銆=銆fMenuMgr.createContextMenu(treeViewer.getControl());銆

銆銆銆銆treeViewer.getControl().setMenu(fMenu);銆
銆銆銆銆getSite().registerContextMenu(fMenuMgr,銆treeViewer);銆銆銆銆銆銆銆銆
銆銆}銆銆銆
銆銆public銆void銆setFocus()銆{銆
銆銆銆銆treeViewer.getTree().setFocus();銆

銆銆}銆
銆}銆

銆銆Person 綾葷殑瀹炵幇

銆銆濡備笅浠g爜娓呭崟 14 涓?Person 綾葷殑瀹炵幇錛岀敤浜庤〃紺?MenuExample 瑙嗗浘涓?TreeViewer 鐨勪竴涓妭鐐癸紝瀹冨疄鐜頒簡 IActionFilter 鎺ュ彛錛岄氳繃 testAttribute 鏉ョ‘瀹氭槸鍚︽樉紺?/ 闅愯棌鑿滃崟錛堝叾涓?target 琛ㄧず鐢ㄦ埛閫夋嫨鐨勫璞★紝name/value 瀵瑰簲浜?plugin.xml 鏂囦歡涓?objectState 鐨?name/value錛?

娓呭崟 14. Person 綾誨疄鐜?/p>

銆public銆class銆Person銆implements銆IActionFilter銆{銆

銆銆private銆String銆firstName銆=銆"John";銆
銆銆private銆String銆lastName銆=銆"Doe";銆
銆銆protected銆int銆age銆=銆37;銆
銆銆public銆Person[]銆children銆=銆new銆Person[0];銆
銆銆public銆Person銆parent銆=銆null;銆
銆銆public銆Person(String銆firstName,銆String銆lastName,銆int銆age)銆{銆
銆銆銆銆this.firstName銆=銆firstName;銆
銆銆銆銆this.lastName銆=銆lastName;銆
銆銆銆銆this.age銆=銆age;銆
銆銆}銆
銆銆public銆Person(String銆firstName,銆String銆lastName,銆int銆age,銆Person[]銆children)銆{銆
銆銆銆銆this(firstName,銆lastName,銆age);銆
銆銆銆銆this.children銆=銆children;銆
銆銆銆銆for銆(int銆i銆=銆0;銆i銆<銆children.length;銆i++)銆{銆
銆銆銆銆銆銆children[i].parent銆=銆this;銆
銆銆銆銆}銆
銆銆}銆
銆銆public銆String銆getFirstName()銆{銆
銆銆銆銆return銆this.firstName;銆
銆銆}銆
銆銆public銆String銆getLastName()銆{銆
銆銆銆銆return銆this.lastName;銆
銆銆}銆
銆銆public銆static銆Person[]銆example()銆{銆
銆銆銆銆return銆new銆Person[]銆{銆
銆銆銆銆銆銆銆銆new銆Person("Dan",銆"Rubel",銆38,銆new銆Person[]銆{銆
銆銆銆銆銆銆銆銆銆銆銆銆new銆Person("Beth",銆"Rubel",銆8),銆
銆銆銆銆銆銆銆銆銆銆銆銆new銆Person("David",銆"Rubel",銆3)銆}),銆
銆銆銆銆銆銆銆銆new銆Person("Eric",銆"Clayberg",銆39,銆new銆Person[]銆{銆
銆銆銆銆銆銆銆銆銆銆銆銆new銆Person("Lauren",銆"Clayberg",銆6),銆
銆銆銆銆銆銆銆銆銆銆銆銆new銆Person("Lee",銆"Clayberg",銆4)銆}),銆
銆銆銆銆銆銆銆銆new銆Person("Mike",銆"Taylor",銆52)銆};銆
銆銆}銆
銆銆public銆String銆toString()銆{銆
銆銆銆銆return銆firstName銆+銆"銆"銆+銆lastName;銆
銆銆}銆
銆銆public銆boolean銆testAttribute(Object銆target,銆String銆name,銆String銆value)銆{銆

銆銆銆銆if銆(target銆instanceof銆Person)銆{銆
銆銆銆銆銆銆Person銆person銆=銆(Person)銆target;銆
銆銆銆銆銆銆if銆(name.equals("firstName")銆&&銆value.equals(person.getFirstName()))銆{銆
銆銆銆銆銆銆銆銆return銆true;銆
銆銆銆銆銆銆}銆

銆銆銆銆銆銆if銆(name.equals("lastName")銆&&銆value.equals(person.getLastName()))銆{銆
銆銆銆銆銆銆銆銆return銆true;銆
銆銆銆銆銆銆}銆
銆銆銆銆}銆
銆銆銆銆return銆false;銆
銆銆}銆
銆}銆

銆銆鎬葷粨

銆銆鑷蟲涓烘錛屽凡緇忔妸 Eclipse 鑿滃崟鍔熻兘鍙婂叾鎵╁睍鐐規秹鍙婂埌鐨勭被 / 鎺ュ彛 /API 榪涜浜嗚緇嗙殑璇存槑錛岀浉淇¤鑰呭凡緇忔湁娓呮櫚鐨勮璇嗕簡銆傚浜庡墠闈㈡彁鍒?popupMenus 鏂瑰紡鍒涘緩涓婁笅鏂囪彍鍗曪紝瑕佹眰閫夋嫨鐨勫璞″疄鐜?IActionFilter 鎺ュ彛錛屼絾鏄紝濡傛灉寮鍙戜漢鍛樻鍦ㄤ嬌鐢?gmf 榪涜寮鍙戯紝閭d箞鎴戜滑鍙互涓嶅繀瑕佹眰閫夋嫨鐨勫璞″疄鐜?IActionFilter錛屾垜浠彲浠ラ氳繃鎵╁睍 org.eclipse.gmf.runtime.common.ui.services.action.actionFilterProviders 瀵硅彍鍗曢」榪涜鎺у埗錛屽涓嬩唬鐮佹竻鍗?15 涓烘墿灞曡 extension point 鐨?xml 浠g爜錛屾垜浠彲浠ュ畾涔夊涓睘鎬э紙<Attribute> … </Attribute錛夛紝鍏朵腑 Attribute 鐨?name 鍜?value 瀵瑰簲浜?visibility 鐨?objectState 涓殑 name 鍜?value銆?/p>

娓呭崟 15. 閫氳繃 actionFilterProviders 鎵╁睍鐐瑰疄鐜板鑿滃崟鐨勬帶鍒?/p>

銆<extension銆
銆point="org.eclipse.gmf.runtime.common.ui.services.action.actionFilterProviders">銆
銆銆銆<ActionFilterProvider銆
銆銆銆銆銆銆class="com.free.menu.PopupActionFilterProvider">銆
銆銆銆銆<Priority銆
銆銆銆銆銆銆銆name="Medium">銆
銆銆銆銆</Priority>銆
銆銆銆銆<Attribute銆
銆銆銆銆銆銆銆name="com.ibm.bg.uml.search.isSupportedType"銆
銆銆銆銆銆銆銆value="supported">銆
銆銆銆銆</Attribute>銆
銆銆銆</ActionFilterProvider>銆
銆</extension>銆

銆銆濡備笅浠g爜娓呭崟 16 鎵紺?PopupActionFilterProvider 鐨勫疄鐜幫紝瀹冪戶鎵?AbstractActionFilterProvider錛屽彧闇瑕佸疄鐜板叾涓殑 testAttribute 鍜?provides 鏂規硶錛屽綋 testAttribute 榪斿洖 true 鏃訛紝閭d箞璇ヨ彍鍗曢」琚惎鐢紝鍚﹀垯紱佺敤銆傚叾涓?target 瀵瑰簲浜庢垜浠夋嫨鐨勫璞★紝name 鍜?value 鍙傛暟瀵瑰簲浜?visiblity 涓?objectState 鐨?name 鍜?value 鐨勬寚瀹氬?( 涓庡墠闈㈡彁鍒扮殑 Person 綾諱腑鐨?testAttribute 鏂規硶綾諱技 )銆?/p>


娓呭崟 16. actionFilterProviders 鎵╁睍鐐瑰疄鐜扮被

銆public銆class銆PopupActionFilterProvider銆extends銆AbstractActionFilterProvider銆{銆


銆銆public銆PopupActionFilterProvider()銆{銆
銆銆}銆

銆銆public銆boolean銆testAttribute(Object銆target,銆String銆name,銆String銆value)銆{銆
銆銆銆銆銆銆銆
銆銆}銆

銆銆public銆boolean銆provides(IOperation銆operation)銆{銆
銆銆銆銆return銆false;銆
銆銆}銆

銆}

 

 

 



鐜╄漿Java 2010-07-03 16:00 鍙戣〃璇勮
]]>
Eclipse涓竴浜涙墿灞曠偣浠嬬粛浜?/title><link>http://m.tkk7.com/jacky9881/archive/2010/07/03/menucommand.html</link><dc:creator>鐜╄漿Java</dc:creator><author>鐜╄漿Java</author><pubDate>Sat, 03 Jul 2010 07:55:00 GMT</pubDate><guid>http://m.tkk7.com/jacky9881/archive/2010/07/03/menucommand.html</guid><wfw:comment>http://m.tkk7.com/jacky9881/comments/325150.html</wfw:comment><comments>http://m.tkk7.com/jacky9881/archive/2010/07/03/menucommand.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/jacky9881/comments/commentRss/325150.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/jacky9881/services/trackbacks/325150.html</trackback:ping><description><![CDATA[鎵╁睍鐐癸細<br /> <div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /><span style="color: #000000">org.eclipse.ui.menus錛堢‘瀹氳彍鍗曞垱寤虹殑鍖哄煙錛?br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />org.eclipse.ui.commands<br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />org.eclipse.ui.handlers錛坈ommand鐨勫叿浣撹涓猴級<br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />org.eclipse.ui.commandImages錛坈omand鐨勫浘鐗囷級<br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /></span></div> <br /> 鎵╁睍鐐筼rg.eclipse.ui.menus鐢ㄦ潵瀵硅彍鍗曡繘琛屾墿灞曪紝鍙互瀵逛富鑿滃崟錛屽伐鍏鋒爮錛屼笂涓嬫枃鑿滃崟榪涜鎵╁睍銆?br /> <br /> 紺轟緥浠g爜濡備笅錛?br /> <div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /><span style="color: #0000ff"><</span><span style="color: #800000">extension<br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />         </span><span style="color: #ff0000">point</span><span style="color: #0000ff">="org.eclipse.ui.menus"</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />      </span><span style="color: #0000ff"><</span><span style="color: #800000">menuContribution<br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />            </span><span style="color: #ff0000">allPopups</span><span style="color: #0000ff">="false"</span><span style="color: #ff0000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />            locationURI</span><span style="color: #0000ff">="menu:org.eclipse.ui.main.menu?after=additions"</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />         </span><span style="color: #0000ff"><</span><span style="color: #800000">command<br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />               </span><span style="color: #ff0000">commandId</span><span style="color: #0000ff">="com.xxxx.test.command1"</span><span style="color: #ff0000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />               style</span><span style="color: #0000ff">="push"</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />         </span><span style="color: #0000ff"></</span><span style="color: #800000">command</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />      </span><span style="color: #0000ff"></</span><span style="color: #800000">menuContribution</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /></span><span style="color: #0000ff"></</span><span style="color: #800000">extension</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /></span></div> <br /> 鍏朵腑locationURI灞炴ф寚瀹氳彍鍗曟墿灞曠殑浣嶇疆錛屼笂榪頒唬鐮佹槸瀵逛富鑿滃崟榪涜鎵╁睍錛屽鏋滆瀵瑰伐鍏鋒爮鍜屼笂涓嬫枃鑿滃崟榪涜鎵╁睍錛屼功鍐欐牸寮忓涓嬶細<br /> <br /> toolbar:org.eclipse.ui.main.toolbar?after=additions<br /> popup:org.eclipse.ui.popup.any?after=additions(涓婁笅鏂囪彍鍗曞湪浠諱綍浣嶇疆鍑虹幇)<br /> popup:org.eclipse.ui.views.ProblemView?after=additions(涓婁笅鏂囪彍鍗曞湪闂瑙嗗浘涓嚭鐜?<br /> <br /> commandId灞炴ф寚瀹氳menu瀵瑰簲鐨刢ommand錛屼竴涓猰enu鍙互瀵瑰簲澶氫釜command銆?br /> <br /> command鍙互閫氳繃鎵╁睍鐐筼rg.eclipse.ui.commands鎵╁睍錛岀ず渚嬩唬鐮佸涓嬶細<br /> <br /> <div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /><span style="color: #0000ff"><</span><span style="color: #800000">extension<br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />         </span><span style="color: #ff0000">point</span><span style="color: #0000ff">="org.eclipse.ui.commands"</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /></span><span style="color: #0000ff"><</span><span style="color: #800000">category<br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />            </span><span style="color: #ff0000">id</span><span style="color: #0000ff">="com.xxxx.test.category1"</span><span style="color: #ff0000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />            name</span><span style="color: #0000ff">="MenuTest"</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />      </span><span style="color: #0000ff"></</span><span style="color: #800000">category</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />      </span><span style="color: #0000ff"><</span><span style="color: #800000">command<br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /></span><span style="color: #ff0000">categoryId</span><span style="color: #0000ff">="="</span><span style="color: #ff0000">com.xxxx.test.category1"<br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />            id</span><span style="color: #0000ff">="com.xxxx.test.command1"</span><span style="color: #ff0000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />            name</span><span style="color: #0000ff">="CommandA"</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />      </span><span style="color: #0000ff"></</span><span style="color: #800000">command</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /> </span><span style="color: #0000ff"></</span><span style="color: #800000">extension</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /></span></div> <br /> 鑷充簬Command鍏蜂綋瑕佸仛浠涔堬紝闇瑕侀氳繃鎵╁睍鐐筼rg.eclipse.ui.handlers鏉ユ寚瀹氾紝紺轟緥浠g爜濡備笅錛?br /> <br /> <div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /><span style="color: #0000ff"><</span><span style="color: #800000">extension<br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />         </span><span style="color: #ff0000">point</span><span style="color: #0000ff">="org.eclipse.ui.handlers"</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />      </span><span style="color: #0000ff"><</span><span style="color: #800000">handler<br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />            </span><span style="color: #ff0000">class</span><span style="color: #0000ff">="com.xxxx.test.SampleHandler"</span><span style="color: #ff0000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />            commandId</span><span style="color: #0000ff">="com.xxxx.test.command1"</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />      </span><span style="color: #0000ff"></</span><span style="color: #800000">handler</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /> </span><span style="color: #0000ff"></</span><span style="color: #800000">extension</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /></span></div> <br /> 榪樻湁鎵╁睍鐐筼rg.eclipse.ui.commandImages錛屽彲浠ユ寚瀹欳ommand瀵瑰簲鐨勫浘鏍囥?br /> <br /> <div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /><span style="color: #000000"> </span><span style="color: #0000ff"><</span><span style="color: #800000">extension<br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />         </span><span style="color: #ff0000">point</span><span style="color: #0000ff">="org.eclipse.ui.commandImages"</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />      </span><span style="color: #0000ff"><</span><span style="color: #800000">image<br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />            </span><span style="color: #ff0000">commandId</span><span style="color: #0000ff">="com.xxxx.test.command1"</span><span style="color: #ff0000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />            icon</span><span style="color: #0000ff">="icons/sample.gif"</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />      </span><span style="color: #0000ff"></</span><span style="color: #800000">image</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" />  </span><span style="color: #0000ff"></</span><span style="color: #800000">extension</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img align="top" src="http://m.tkk7.com/images/OutliningIndicators/None.gif" alt="" /></span></div> <br /> <img src ="http://m.tkk7.com/jacky9881/aggbug/325150.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/jacky9881/" target="_blank">鐜╄漿Java</a> 2010-07-03 15:55 <a href="http://m.tkk7.com/jacky9881/archive/2010/07/03/menucommand.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>Eclipse涓竴浜涙墿灞曠偣浠嬬粛涓http://m.tkk7.com/jacky9881/archive/2010/07/03/orgeclipsecoreruntimepreferences.html鐜╄漿Java鐜╄漿JavaSat, 03 Jul 2010 07:22:00 GMThttp://m.tkk7.com/jacky9881/archive/2010/07/03/orgeclipsecoreruntimepreferences.htmlhttp://m.tkk7.com/jacky9881/comments/325148.htmlhttp://m.tkk7.com/jacky9881/archive/2010/07/03/orgeclipsecoreruntimepreferences.html#Feedback0http://m.tkk7.com/jacky9881/comments/commentRss/325148.htmlhttp://m.tkk7.com/jacky9881/services/trackbacks/325148.htmlorg.eclipse.core.runtime.preferences
鍔熻兘錛氳鎵╁睍鐐逛富瑕佺敤鏉ヨ緗閫夐」鐨勫垵濮嬪鹼紱

鎵╁睍鐐圭ず渚嬶細

<extension
         
point="org.eclipse.core.runtime.preferences">
      
<initializer
            
class="com.xxxx.test.AbstractPreferenceInitializer1">
      
</initializer>
</extension>

initializer鎸囧畾璁劇疆棣栭夐」鍒濆鍊肩殑綾伙紝紺轟緥浠g爜濡備笅錛?br />
public class AbstractPreferenceInitializer1 extends
        AbstractPreferenceInitializer 
{    
    @Override
    
public void initializeDefaultPreferences() {
        IPreferenceStore prefs 
= Activator.getDefault().getPreferenceStore();
        prefs.setDefault(
"MAX"1000);
    }

}


涓婅堪浠g爜璁劇疆灞炴AX鐨勫垵濮嬪間負1000錛岃繖涓睘鎬у氨鍙互琚閫夐」浣跨敤浜嗐?br />
浣跨敤鎵╁睍鐐?span style="font-family: 'Courier New'; color: black; font-size: 10pt; mso-fareast-font-family: 瀹嬩綋; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang="EN-US">org.eclipse.ui.preferencePages鎵╁睍棣栭夐」

鎵╁睍鐐圭ず渚嬶細

<extension
         
point="org.eclipse.ui.preferencePages">
      
<page
            
class="com.xxxx.test.WorkbenchPreferencePage1"
            id
="com.xxxx.test.page1"
            name
="testName">
      
</page>
</extension>

榪欐牱灝卞彲浠ュ湪WorkbenchPreferencePage1綾諱腑浣跨敤鍒氭墠瀹氫箟鐨勫睘鎬AX浜嗭紝紺轟緥浠g爜濡備笅錛?br />
public class WorkbenchPreferencePage1 extends FieldEditorPreferencePage implements
        IWorkbenchPreferencePage 
{

    
public void init(IWorkbench workbench) {
        setPreferenceStore(Activator.getDefault().getPreferenceStore());        
    }

    @Override
    
protected void createFieldEditors() {
        
int max = getPreferenceStore().getDefaultInt("MAX");    
        System.out.println(
""+max);
    }
    
}




鐜╄漿Java 2010-07-03 15:22 鍙戣〃璇勮
]]>
Eclipse鐨勫唴瀛樹紭鍖栦笌鍐呭瓨涓嶈凍闂(杞創)http://m.tkk7.com/jacky9881/archive/2010/06/26/Java_OutOfMemoryError.html鐜╄漿Java鐜╄漿JavaSat, 26 Jun 2010 13:37:00 GMThttp://m.tkk7.com/jacky9881/archive/2010/06/26/Java_OutOfMemoryError.htmlhttp://m.tkk7.com/jacky9881/comments/324572.htmlhttp://m.tkk7.com/jacky9881/archive/2010/06/26/Java_OutOfMemoryError.html#Feedback0http://m.tkk7.com/jacky9881/comments/commentRss/324572.htmlhttp://m.tkk7.com/jacky9881/services/trackbacks/324572.html鍘熷潃鍦板潃錛歨ttp://hi.baidu.com/dangjun625/blog/item/a0732c0845181ddc63d98666.html

MyEclipse has detected that less than 5% of the 64MB of Perm
Gen (Non-heap memory) space remains. It is strongly recommended
that you exit and restart MyEclipse with new virtual machine memory
paramters to increase this memory.   Failure to do so can result in
data loss. The recommended Eclipse memory parameters are:
eclipse.exe -vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M

eclipse鏍圭洰褰曚笅闈㈢殑 eclipse.ini 閰嶇疆 浠庣綉涓婃悳浜嗕簺璧勬枡

-vmargs錛氳鏄庡悗闈㈡槸VM鐨勫弬鏁?br /> -Xms128m錛氳櫄鎷熸満鍗犵敤緋葷粺鐨勬渶灝忓唴瀛?br /> -Xmx512m錛氳櫄鎷熸満鍗犵敤緋葷粺鐨勬渶澶у唴瀛樼殑5%涓?5.6M錛岀悊璁轟笂瑕佹眰-Xmx鐨勬暟鍊間笌-XX:MaxPermSize蹇呴』澶т簬25.6M
-XX:PermSize錛氭渶灝忓爢澶у皬銆備竴鑸姤鍐呭瓨涓嶈凍鏃?閮芥槸璇磋繖涓お灝? 鍫嗙┖闂村墿浣欏皬浜?%灝變細璀﹀憡,寤鴻鎶婅繖涓◢寰澶т竴鐐?涓嶈繃瑕佽鑷繁鏈哄櫒鍐呭瓨澶у皬鏉ヨ緗?br /> -XX:MaxPermSize錛氭渶澶у爢澶у皬銆傝繖涓篃閫傚綋澶т簺

鎶婇噷闈㈢殑鍙傛暟鏀逛負
-vmargs  
-Xms128M  
-Xmx512M  
-XX:PermSize=128M  
-XX:MaxPermSize=256M
闂瑙e喅錛?/p>

浠庣綉涓婄殑璧勬枡鐪婸ermSize澶т竴鐐硅偗瀹氭洿濂斤紝鑰屼笖鏈濂芥槸璁劇疆PermSize鍜孧axPermSize涓鏍峰ぇ銆傜悊鐢卞涓嬶細
PermSize 鍜孧axPermSize濡傛灉璁劇疆涓虹浉鍚岃繕鍙互鍦ㄤ竴瀹氱▼搴︿笂鎻愰珮鎬ц兘錛屽洜涓猴紝PermSize鍦ㄤ笉鏂殑鍙樺寲涓細闇瑕佽漿縐誨叾涓殑鏁版嵁銆傚鏋滃浐瀹氫簡浠ュ悗錛屽垯鍙互鍑忓皯姣忔鎵╁ぇPermSize甯︽潵鐨勬ц兘鎹熷け銆?/p>

1銆丳ermGen space綆浠?
銆銆
銆銆PermGen space鐨勫叏縐版槸Permanent Generation space錛屾槸鎸囧唴瀛樼殑姘鎬箙淇濆瓨鍖哄煙OutOfMemoryError: PermGen space浠庤〃闈笂鐪嬪氨鏄唴瀛樼泭鍑猴紝瑙e喅鏂規硶涔熶竴瀹氭槸鍔犲ぇ鍐呭瓨銆?
銆銆
銆銆璇磋涓轟粈涔堜細鍐呭瓨鐩婂嚭錛?
銆銆錛?錛夎繖涓閮ㄥ垎鐢ㄤ簬瀛樻斁Class鍜孧eta鐨勪俊鎭紝Class鍦ㄨ Load鐨勬椂鍊欒鏀懼叆PermGen space鍖哄煙錛屽畠鍜屽拰瀛樻斁Instance鐨凥eap鍖哄煙涓嶅悓銆?
銆銆錛?錛?GC(Garbage Collection)涓嶄細鍦ㄤ富紼嬪簭榪愯鏈熷PermGen space榪涜娓呯悊錛屾墍浠ュ鏋滀綘鐨凙PP浼歀OAD寰堝CLASS 鐨勮瘽,灝卞緢鍙兘鍑虹幇PermGen space閿欒銆傝繖縐嶉敊璇父瑙佸湪web鏈嶅姟鍣ㄥJSP榪涜pre compile鐨勬椂鍊欍?
銆銆
銆銆濡傛灉浣犵殑WEB APP涓嬮兘鐢ㄤ簡澶ч噺鐨勭涓夋柟jar錛屽叾澶у皬瓚呰繃浜唈vm榛樿鐨勫ぇ灝?4M)閭d箞灝變細浜х敓姝ら敊璇俊鎭簡銆?/p>

瑙e喅鏂規硶錛?鎵嬪姩璁劇疆MaxPermSize澶у皬
銆銆
銆銆淇敼TOMCAT_HOME/bin/catalina.bat錛屽湪echo "Using CATALINA_BASE: $CATALINA_BASE"涓婇潰鍔犲叆浠ヤ笅琛岋細
銆銆 JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=128m
銆銆寤鴻錛氬皢鐩稿悓鐨勭涓夋柟jar鏂囦歡縐葷疆鍒皌omcat/shared/lib鐩綍涓嬶紝榪欐牱鍙互鍑忓皯jar 鏂囨。閲嶅鍗犵敤鍐呭瓨

1銆傚弬鏁扮殑鍚箟

-vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M

鍙傛暟涓?vmargs鐨勬剰鎬濇槸璁劇疆JVM鍙傛暟錛屾墍浠ュ悗闈㈢殑鍏跺疄閮芥槸JVM鐨勫弬鏁頒簡錛屾垜浠鍏堜簡瑙d竴涓婮VM鍐呭瓨綆$悊鐨勬満鍒訛紝鐒跺悗鍐嶈В閲婃瘡涓弬鏁頒唬琛ㄧ殑鍚箟銆?br /> 鍫?Heap)鍜岄潪鍫?Non-heap)鍐呭瓨
鎸夌収瀹樻柟鐨勮娉曪細“Java 铏氭嫙鏈哄叿鏈変竴涓爢錛屽爢鏄繍琛屾椂鏁版嵁鍖哄煙錛屾墍鏈夌被瀹炰緥鍜屾暟緇勭殑鍐呭瓨鍧囦粠姝ゅ鍒嗛厤銆傚爢鏄湪 Java 铏氭嫙鏈哄惎鍔ㄦ椂鍒涘緩鐨勩?#8221;“鍦↗VM涓爢涔嬪鐨勫唴瀛樼О涓洪潪鍫嗗唴瀛?Non-heap memory)”銆傚彲浠ョ湅鍑篔VM涓昏綆$悊涓ょ綾誨瀷鐨勫唴瀛橈細鍫嗗拰闈炲爢銆傜畝鍗曟潵璇村爢灝辨槸Java浠g爜鍙強鐨勫唴瀛橈紝鏄暀緇欏紑鍙戜漢鍛樹嬌鐢ㄧ殑錛涢潪鍫嗗氨鏄疛VM鐣欑粰鑷繁鐢ㄧ殑錛屾墍浠ユ柟娉曞尯銆丣VM鍐呴儴澶勭悊鎴栦紭鍖栨墍闇鐨勫唴瀛?濡侸IT緙栬瘧鍚庣殑浠g爜緙撳瓨)銆佹瘡涓被緇撴瀯(濡傝繍琛屾椂甯告暟姹犮佸瓧孌靛拰鏂規硶鏁版嵁)浠ュ強鏂規硶鍜屾瀯閫犳柟娉曠殑浠g爜閮藉湪闈炲爢鍐呭瓨涓?
鍫嗗唴瀛樺垎閰?br /> JVM鍒濆鍒嗛厤鐨勫唴瀛樼敱-Xms鎸囧畾錛岄粯璁ゆ槸鐗╃悊鍐呭瓨鐨?/64錛?strong>JVM鏈澶у垎閰嶇殑鍐呭瓨鐢?Xmx鎸囧畾錛岄粯璁ゆ槸鐗╃悊鍐呭瓨鐨?/4銆傞粯璁ょ┖浣欏爢鍐呭瓨灝忎簬40%鏃訛紝JVM灝變細澧炲ぇ鍫嗙洿鍒?Xmx鐨勬渶澶ч檺鍒訛紱絀轟綑鍫嗗唴瀛樺ぇ浜?0%鏃訛紝JVM浼氬噺灝戝爢鐩村埌-Xms鐨勬渶灝忛檺鍒躲傚洜姝ゆ湇鍔″櫒涓鑸緗?Xms銆?Xmx鐩哥瓑浠ラ伩鍏嶅湪姣忔GC 鍚庤皟鏁村爢鐨勫ぇ灝忋?
闈炲爢鍐呭瓨鍒嗛厤
JVM浣跨敤-XX:PermSize璁劇疆闈炲爢鍐呭瓨鍒濆鍊?/strong>錛岄粯璁ゆ槸鐗╃悊鍐呭瓨鐨?/64錛?strong>鐢盭X:MaxPermSize璁劇疆鏈澶ч潪鍫嗗唴瀛樼殑澶у皬錛岄粯璁ゆ槸鐗╃悊鍐呭瓨鐨?/4銆?
JVM鍐呭瓨闄愬埗(鏈澶у?
棣栧厛JVM鍐呭瓨闄愬埗浜庡疄闄呯殑鏈澶х墿鐞嗗唴瀛橈紝鍋囪鐗╃悊鍐呭瓨鏃犻檺澶х殑璇濓紝JVM鍐呭瓨鐨勬渶澶у艱窡鎿嶄綔緋葷粺鏈夊緢澶х殑鍏崇郴銆傜畝鍗曠殑璇村氨32浣嶅鐞嗗櫒铏界劧鍙帶鍐呭瓨絀洪棿鏈?GB,浣嗘槸鍏蜂綋鐨勬搷浣滅郴緇熶細緇欎竴涓檺鍒訛紝榪欎釜闄愬埗涓鑸槸2GB-3GB錛堜竴鑸潵璇碬indows緋葷粺涓嬩負1.5G-2G錛孡inux緋葷粺涓嬩負2G-3G錛夛紝鑰?4bit浠ヤ笂鐨勫鐞嗗櫒灝變笉浼氭湁闄愬埗浜嗐?/p>

2. 涓轟粈涔堟湁鐨勬満鍣ㄦ垜灝?Xmx鍜?XX:MaxPermSize閮借緗負512M涔嬪悗Eclipse鍙互鍚姩錛岃屾湁浜涙満鍣ㄦ棤娉曞惎鍔紵

閫氳繃涓婇潰瀵笿VM鍐呭瓨綆$悊鐨勪粙緇嶆垜浠凡緇忎簡瑙e埌JVM鍐呭瓨鍖呭惈涓ょ錛氬爢鍐呭瓨鍜岄潪鍫嗗唴瀛橈紝鍙﹀JVM鏈澶у唴瀛橀鍏堝彇鍐充簬瀹為檯鐨勭墿鐞嗗唴瀛樺拰鎿嶄綔緋葷粺銆傛墍浠ヨ璁劇疆VM鍙傛暟瀵艱嚧紼嬪簭鏃犳硶鍚姩涓昏鏈変互涓嬪嚑縐嶅師鍥狅細
1) 鍙傛暟涓?Xms鐨勫煎ぇ浜?Xmx錛屾垨鑰?XX:PermSize鐨勫煎ぇ浜?XX:MaxPermSize錛?br /> 2) -Xmx鐨勫煎拰-XX:MaxPermSize鐨勬誨拰瓚呰繃浜咼VM鍐呭瓨鐨勬渶澶ч檺鍒訛紝姣斿褰撳墠鎿嶄綔緋葷粺鏈澶у唴瀛橀檺鍒訛紝鎴栬呭疄闄呯殑鐗╃悊鍐呭瓨絳夌瓑銆傝鍒板疄闄呯墿鐞嗗唴瀛樿繖閲岄渶瑕佽鏄庝竴鐐圭殑鏄紝濡傛灉浣犵殑鍐呭瓨鏄?024MB錛屼絾瀹為檯緋葷粺涓敤鍒扮殑騫朵笉鍙兘鏄?024MB錛屽洜涓烘湁涓閮ㄥ垎琚‖浠跺崰鐢ㄤ簡銆?/p>

3. 涓轟綍灝嗕笂闈㈢殑鍙傛暟鍐欏叆鍒癳clipse.ini鏂囦歡Eclipse娌℃湁鎵ц瀵瑰簲鐨勮緗紵
閭d負浠涔堝悓鏍風殑鍙傛暟鍦ㄥ揩鎹鋒柟寮忔垨鑰呭懡浠よ涓湁鏁堣屽湪eclipse.ini鏂囦歡涓槸鏃犳晥鐨勫憿錛熻繖鏄洜涓烘垜浠病鏈夐伒瀹坋clipse.ini鏂囦歡鐨勮緗鍒欙細
鍙傛暟褰㈠“欏?鍊?#8221;榪欑褰㈠紡錛屼腑闂存湁絀烘牸鐨勯渶瑕佹崲琛屼功鍐欙紝濡傛灉鍊間腑鏈夌┖鏍肩殑闇瑕佺敤鍙屽紩鍙峰寘鎷搗鏉ャ傛瘮濡傛垜浠嬌鐢?vm C:\Java\jre1.6.0\bin\javaw.exe鍙傛暟璁劇疆铏氭嫙鏈猴紝鍦╡clipse.ini鏂囦歡涓鍐欐垚榪欐牱錛?br /> -vm
C:\Java\jre1.6.0\bin\javaw.exe
鎸夌収涓婇潰鎵璇寸殑錛屾渶鍚庡弬鏁板湪eclipse.ini涓彲浠ュ啓鎴愯繖涓牱瀛愶細
-vmargs
-Xms128M
-Xmx512M
-XX:PermSize=64M
-XX:MaxPermSize=128M
瀹為檯榪愯鐨勭粨鏋滃彲浠ラ氳繃Eclipse涓?#8220;Help”-“About Eclipse SDK”紿楀彛閲岄潰鐨?#8220;Configuration Details”鎸夐挳榪涜鏌ョ湅銆?br /> 鍙﹀闇瑕佽鏄庣殑鏄紝Eclipse鍘嬬緝鍖呬腑鑷甫鐨別clipse.ini鏂囦歡鍐呭鏄繖鏍風殑錛?br /> -showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vmargs
-Xms40m
-Xmx256m
鍏朵腑–launcher.XXMaxPermSize錛堟敞鎰忔渶鍓嶉潰鏄袱涓繛鎺ョ嚎錛夎窡-XX:MaxPermSize鍙傛暟鐨勫惈涔夊熀鏈槸涓鏍風殑錛屾垜瑙夊緱鍞竴鐨勫尯鍒氨鏄墠鑰呮槸eclipse.exe鍚姩鐨勬椂鍊欒緗殑鍙傛暟錛岃屽悗鑰呮槸eclipse鎵浣跨敤鐨凧VM涓殑鍙傛暟銆傚叾瀹炰簩鑰呰緗竴涓氨鍙互浜嗭紝鎵浠ヨ繖閲屽彲浠ユ妸–launcher.XXMaxPermSize鍜屼笅涓琛屼嬌鐢?娉ㄩ噴鎺夈?/p>

3. 鍏朵粬鐨勫惎鍔ㄥ弬鏁般?濡傛灉浣犳湁涓涓弻鏍哥殑CPU錛屼篃璁稿彲浠ュ皾璇曡繖涓弬鏁?



鐜╄漿Java 2010-06-26 21:37 鍙戣〃璇勮
]]>
JVM terminated.Exit code=1.http://m.tkk7.com/jacky9881/archive/2008/07/27/217880.html鐜╄漿Java鐜╄漿JavaSun, 27 Jul 2008 13:22:00 GMThttp://m.tkk7.com/jacky9881/archive/2008/07/27/217880.htmlhttp://m.tkk7.com/jacky9881/comments/217880.htmlhttp://m.tkk7.com/jacky9881/archive/2008/07/27/217880.html#Feedback2http://m.tkk7.com/jacky9881/comments/commentRss/217880.htmlhttp://m.tkk7.com/jacky9881/services/trackbacks/217880.html JVM terminated.Exit code=1.
鍦ㄧ綉涓婃壘浜嗕簺璧勬枡錛屾壘鍒頒簡瑙e喅鏂規硶銆?br /> 鍙淇敼eclipse.ini鏂囦歡鍗沖彲銆備慨鏀瑰唴瀹瑰涓嬶細
-startup
plugins\org.eclipse.equinox.launcher_1.0.100.v20080509-1800.jar
--launcher.library
plugins\org.eclipse.equinox.launcher.win32.win32.x86_1.0.100.v20080509-1800
-showsplash
vm
D:\Java\jdk15011\bin\javaw.exe
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vmargs
-Xms40m
-Xmx256m
鍏朵腑綺椾綋閮ㄥ垎涓烘柊澧炲唴瀹廣?

]]>
Eclipse鎻掍歡寮鍙戦棶棰樹簩http://m.tkk7.com/jacky9881/archive/2008/04/23/195233.html鐜╄漿Java鐜╄漿JavaWed, 23 Apr 2008 11:44:00 GMThttp://m.tkk7.com/jacky9881/archive/2008/04/23/195233.htmlhttp://m.tkk7.com/jacky9881/comments/195233.htmlhttp://m.tkk7.com/jacky9881/archive/2008/04/23/195233.html#Feedback0http://m.tkk7.com/jacky9881/comments/commentRss/195233.htmlhttp://m.tkk7.com/jacky9881/services/trackbacks/195233.html闂鎻忚堪錛?/span>

鏈榪戝湪鍋?/span>Eclipse鎻掍歡寮鍙戠殑鏃跺欙紝鍦ㄥ浗闄呭寲鐨勯棶棰樹笂閬囧埌榪欐牱闂錛屾瘮濡傛垜鐨?/span>plugin.xml鏂囦歡涓紝閫氳繃%xxx鏉ュ紩鐢?/span>plugin_zh.properties涓搴旈敭xxx鐨勪俊鎭椂錛屽湪鎻掍歡榪愯鏃訛紝鐩稿簲鐨勪俊鎭樉紺轟笉浜嗭紝鍚庢潵榪涜繃鐮旂┒錛屽彂鐜版槸鐢變簬鍦?/span>MANIFEST.MF灝戦厤緗簡涓欏歸犳垚鐨?/span>

Bundle-Localization: plugin錛?/span>

鑰岃繖涓欏歸厤緗垜鍦?/span>Overview鏍囩欏典笂娌℃湁鎵懼埌鐩稿簲璁劇疆鐨勫湴鏂癸紝鎶婅繖涓湪MANIFEST.MF鍔犱笂錛屾彃浠跺湪榪愯鏃訛紝灝卞彲浠ユ樉紺?/span>plugin_zh.properties涓畾涔夌殑娑堟伅浜嗐?/span>



]]>
Eclipse鎻掍歡寮鍙戜腑鐨勯棶棰樹竴http://m.tkk7.com/jacky9881/archive/2008/04/23/195232.html鐜╄漿Java鐜╄漿JavaWed, 23 Apr 2008 11:41:00 GMThttp://m.tkk7.com/jacky9881/archive/2008/04/23/195232.htmlhttp://m.tkk7.com/jacky9881/comments/195232.htmlhttp://m.tkk7.com/jacky9881/archive/2008/04/23/195232.html#Feedback1http://m.tkk7.com/jacky9881/comments/commentRss/195232.htmlhttp://m.tkk7.com/jacky9881/services/trackbacks/195232.html闂鎻忚堪錛?/span>

鏈榪戝湪Eclipse鎻掍歡寮鍙戜腑閬囧埌榪欐牱鐨勯棶棰橈紝鎴戜嬌鐢ㄥ鍏ユ墿灞曠偣

<extension
       
point="org.eclipse.debug.ui.launchConfigurationTabs">
    
<tab
          
class="com.example.launch.SqlDebugTab"
          group
="org.eclipse.jdt.debug.ui.launchConfigurationTabGroup.localJavaApplication"
          id
=" com.example.launchs.SqlDebugTab"
          name
="SqlDebugTab">
       
<associatedDelegate
             
delegate=" com.example.launch.SqlDebugLaunchDelegate">
       
</associatedDelegate>
    
</tab>
 
</extension>

<extension
          
point="org.eclipse.debug.core.launchDelegates">
       
<launchDelegate
             
delegate=" com.example.launch.SqlDebugLaunchDelegate"
             id
=" com.example.launch.SqlDebugLaunchDelegate"
             modes
="debug"
             type
="org.eclipse.jdt.launching.localJavaApplication">
       
</launchDelegate>
    
</extension>

 

涔熷氨鏄湪璋冨紡Java Application鐨勫璇濇涓紝澧炲姞涓涓?/span>Tab欏碉紝Tab欏電殑鍚嶅瓧涓?/span>SqlDebugTab錛屽湪榪欎釜Tab欏典笂澧炲姞鍑犱釜澶嶉夋錛屽閫夋瑕佹樉紺鴻鍥劇殑鍚嶇О錛屽鏋滅敤鎴烽夋嫨鏌愪釜澶嶉夋錛岀偣“Debug”鍚庯紝灝嗘樉紺烘寚瀹氱殑瑙嗗浘錛屽彲鏄湪com.example.launch.SqlDebugLaunchDelegate綾諱腑鐨?/span>launch鏂規硶涓皟鐢?/span>PlatformUI.getWorkbench().getActiveWorkbenchWindow()錛屽緱鍒扮殑瀵硅薄鍗翠負null錛岃皟璇曠▼搴忔墠鍙戠幇錛岃繍琛?/span>com.example.launch.SqlDebugLaunchDelegate綾繪槸錛岃蛋鐨勬槸鏂扮嚎紼嬶紝涔熷氨鏄鐐?#8220;Debug”鎸夐挳鏃訛紝Eclipse騫沖彴鍚姩鐨勬槸鏂扮殑綰跨▼錛堥潪UI綰跨▼錛夛紝鑰屽湪鏂扮嚎紼嬩腑鏄彇涓嶅埌ActiveWorkbenchWindow瀵硅薄錛屼負浜嗚В鍐寵繖涓棶棰?/span>,鑺辮垂浜嗗緢澶氭椂闂達紝鏈鍚庣粓浜庢壘鍒拌В鍐蟲柟娉?/span>,鍦?/span>launch鏂規硶閫氳繃濡備笅紼嬪簭鏉ユ樉紺鴻鍥撅紝灝卞彲浠ヨВ鍐充笂闈㈤亣鍒扮殑闂錛?/span>

PlatformUI.getWorkbench().getDisplay().asyncExec(new Runnable() {
            
public void run() {
                IWorkbenchWindow window 
= PlatformUI.getWorkbench()
                        .getActiveWorkbenchWindow();
                
if (window != null){
                    window.getActivePage().showView錛?/span>"……"錛夛紱
}

}

}



]]>
嫻佺▼璁捐鍣ㄥ紑鍙戝崄浜岋紙澶嶅埗綺樿創閮ㄥ垎錛?/title><link>http://m.tkk7.com/jacky9881/archive/2008/01/17/175815.html</link><dc:creator>鐜╄漿Java</dc:creator><author>鐜╄漿Java</author><pubDate>Thu, 17 Jan 2008 00:27:00 GMT</pubDate><guid>http://m.tkk7.com/jacky9881/archive/2008/01/17/175815.html</guid><wfw:comment>http://m.tkk7.com/jacky9881/comments/175815.html</wfw:comment><comments>http://m.tkk7.com/jacky9881/archive/2008/01/17/175815.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://m.tkk7.com/jacky9881/comments/commentRss/175815.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/jacky9881/services/trackbacks/175815.html</trackback:ping><description><![CDATA[瑕佸湪緙栬緫鍣ㄤ腑鏀寔澶嶅埗錛岀矘璐村姛鑳斤紝棣栧厛錛岃鍦ㄧ紪杈戝櫒涓夋嫨媧誨姩鑺傜偣錛孍clipse宸ヤ綔鍙扮殑鑿滃崟涓鍒訛紝綺樿創鎸夐挳澶勪簬嬋媧葷姸鎬侊紝瑕佸疄鐜拌繖鍔熻兘錛屾垜浠繕蹇呴』鍋氫簺閰嶇疆錛屽洜涓虹紪杈戝櫒娌℃湁鍗曠嫭鐨勮彍鍗曟爮錛屾墍鏈夌紪杈戝櫒鍏變韓涓涓彍鍗曟爮錛屽墠闈㈡垜浠湪瀹氫箟緙栬緫鍣ㄦ墿灞曠偣鏃訛紝鏈変竴涓睘鎬ontributorClass娌℃湁鎸囧畾鍊鹼紝瀹冪殑鍊煎簲璇ユ槸涓涓疄鐜癐EditorActionBarContributor鎺ュ彛鐨勭被鐨勫叏鍚嶏紝鍙湁鎸囧畾榪欎釜灞炴э紝鑿滃崟鏍忎腑鐨勮彍鍗曢」鎵嶈兘澶熷鎴戜滑鍦ㄧ紪杈戝櫒涓墍鍋氱殑鎿嶄綔榪涜鐩稿簲錛?br /> 棣栧厛錛屾垜浠鍔犲睘鎬ontributorClass瀵瑰簲鐨勭被錛?br /> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><span style="color: #0000ff">package</span><span style="color: #000000"> com.example.workflow.actions;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> org.eclipse.gef.ui.actions.ActionBarContributor;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> org.eclipse.ui.actions.ActionFactory;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><br /> <img id="Codehighlighter1_209_377_Open_Image" onclick="this.style.display='none'; Codehighlighter1_209_377_Open_Text.style.display='none'; Codehighlighter1_209_377_Closed_Image.style.display='inline'; Codehighlighter1_209_377_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_209_377_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_209_377_Closed_Text.style.display='none'; Codehighlighter1_209_377_Open_Image.style.display='inline'; Codehighlighter1_209_377_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedBlock.gif" align="top" alt="" /></span><span style="color: #0000ff">public</span><span style="color: #000000"> </span><span style="color: #0000ff">class</span><span style="color: #000000"> WorkflowActionContributor </span><span style="color: #0000ff">extends</span><span style="color: #000000"> ActionBarContributor </span><span id="Codehighlighter1_209_377_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_209_377_Open_Text"><span style="color: #000000">{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" /><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />    @Override<br /> <img id="Codehighlighter1_254_260_Open_Image" onclick="this.style.display='none'; Codehighlighter1_254_260_Open_Text.style.display='none'; Codehighlighter1_254_260_Closed_Image.style.display='inline'; Codehighlighter1_254_260_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_254_260_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_254_260_Closed_Text.style.display='none'; Codehighlighter1_254_260_Open_Image.style.display='inline'; Codehighlighter1_254_260_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" alt="" />    </span><span style="color: #0000ff">protected</span><span style="color: #000000"> </span><span style="color: #0000ff">void</span><span style="color: #000000"> buildActions() </span><span id="Codehighlighter1_254_260_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_254_260_Open_Text"><span style="color: #000000">{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />        <br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" alt="" />    }</span></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />    <br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />    @Override<br /> <img id="Codehighlighter1_317_373_Open_Image" onclick="this.style.display='none'; Codehighlighter1_317_373_Open_Text.style.display='none'; Codehighlighter1_317_373_Closed_Image.style.display='inline'; Codehighlighter1_317_373_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_317_373_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_317_373_Closed_Text.style.display='none'; Codehighlighter1_317_373_Open_Image.style.display='inline'; Codehighlighter1_317_373_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" alt="" />    </span><span style="color: #0000ff">protected</span><span style="color: #000000"> </span><span style="color: #0000ff">void</span><span style="color: #000000"> declareGlobalActionKeys() </span><span id="Codehighlighter1_317_373_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_317_373_Open_Text"><span style="color: #000000">{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />        addGlobalActionKey(ActionFactory.COPY.getId());<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />        <br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" alt="" />    }</span></span><span style="color: #000000">    <br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" /><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" alt="" />}</span></span></div> <p>鍦╠eclareGlobalActionKeys澧炲姞瀵瑰鍒跺懡浠ょ殑鐢蟲槑錛屽悓鏃舵妸灞炴ontributorClass鎸囧畾涓鴻繖涓被錛屽寘鍚叏璺緞銆傚啀瀹氫箟澶嶅埗鍔ㄤ綔CopyAction錛屼唬鐮佸涓嬶細<br /> </p> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><span style="color: #0000ff">package</span><span style="color: #000000"> com.example.workflow.actions;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> org.eclipse.gef.ui.actions.SelectionAction;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> org.eclipse.ui.IWorkbenchPart;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> org.eclipse.ui.actions.ActionFactory;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><br /> <img id="Codehighlighter1_221_394_Open_Image" onclick="this.style.display='none'; Codehighlighter1_221_394_Open_Text.style.display='none'; Codehighlighter1_221_394_Closed_Image.style.display='inline'; Codehighlighter1_221_394_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_221_394_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_221_394_Closed_Text.style.display='none'; Codehighlighter1_221_394_Open_Image.style.display='inline'; Codehighlighter1_221_394_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedBlock.gif" align="top" alt="" /></span><span style="color: #0000ff">public</span><span style="color: #000000"> </span><span style="color: #0000ff">class</span><span style="color: #000000"> CopyAction </span><span style="color: #0000ff">extends</span><span style="color: #000000"> SelectionAction</span><span id="Codehighlighter1_221_394_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_221_394_Open_Text"><span style="color: #000000">{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" /><br /> <img id="Codehighlighter1_264_319_Open_Image" onclick="this.style.display='none'; Codehighlighter1_264_319_Open_Text.style.display='none'; Codehighlighter1_264_319_Closed_Image.style.display='inline'; Codehighlighter1_264_319_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_264_319_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_264_319_Closed_Text.style.display='none'; Codehighlighter1_264_319_Open_Image.style.display='inline'; Codehighlighter1_264_319_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" alt="" />    </span><span style="color: #0000ff">public</span><span style="color: #000000"> CopyAction(IWorkbenchPart part) </span><span id="Codehighlighter1_264_319_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_264_319_Open_Text"><span style="color: #000000">{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />        </span><span style="color: #0000ff">super</span><span style="color: #000000">(part);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />        setId(ActionFactory.COPY.getId());<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" alt="" />    }</span></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" /><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />    @Override<br /> <img id="Codehighlighter1_371_391_Open_Image" onclick="this.style.display='none'; Codehighlighter1_371_391_Open_Text.style.display='none'; Codehighlighter1_371_391_Closed_Image.style.display='inline'; Codehighlighter1_371_391_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_371_391_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_371_391_Closed_Text.style.display='none'; Codehighlighter1_371_391_Open_Image.style.display='inline'; Codehighlighter1_371_391_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" alt="" />    </span><span style="color: #0000ff">protected</span><span style="color: #000000"> </span><span style="color: #0000ff">boolean</span><span style="color: #000000"> calculateEnabled() </span><span id="Codehighlighter1_371_391_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_371_391_Open_Text"><span style="color: #000000">{        <br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />        </span><span style="color: #0000ff">return</span><span style="color: #000000"> </span><span style="color: #0000ff">true</span><span style="color: #000000">;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" alt="" />    }</span></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" /><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" alt="" />}</span></span></div> <p> </p> <p><br /> 娉ㄦ剰鏋勯犲嚱鏁頒腑涓瀹氳鎶婅繖涓猘ction鐨刬d璁劇疆涓篈ctionFactory.COPY.getId()錛屽拰鍓嶉潰緇熶竴璧鋒潵錛?/p> <p>鍒拌繖鍎胯繕娌℃湁緇撴潫錛岃繕蹇呴』鍦ㄧ紪杈戝櫒綾諱腑娉ㄥ唽榪欎釜action錛岃鐩栫紪杈戝櫒鐖剁被涓殑createActions()鏂規硶錛?/p> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img id="Codehighlighter1_31_219_Open_Image" onclick="this.style.display='none'; Codehighlighter1_31_219_Open_Text.style.display='none'; Codehighlighter1_31_219_Closed_Image.style.display='inline'; Codehighlighter1_31_219_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_31_219_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_31_219_Closed_Text.style.display='none'; Codehighlighter1_31_219_Open_Image.style.display='inline'; Codehighlighter1_31_219_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedBlock.gif" align="top" alt="" /><span style="color: #0000ff">protected</span><span style="color: #000000"> </span><span style="color: #0000ff">void</span><span style="color: #000000"> createActions() </span><span id="Codehighlighter1_31_219_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_31_219_Open_Text"><span style="color: #000000">{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />    </span><span style="color: #0000ff">super</span><span style="color: #000000">.createActions();<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" /><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />    CopyAction copyAction </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #0000ff">new</span><span style="color: #000000"> CopyAction((IWorkbenchPart) </span><span style="color: #0000ff">this</span><span style="color: #000000">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />    getActionRegistry().registerAction(copyAction);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />    getSelectionActions().add(copyAction.getId());<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" alt="" />}</span></span></div> 浣嗘槸褰撴垜浠湪澶嶅埗鎸夐挳鍙敤鎯呭喌錛岀偣鍑諱箣鍚庯紝鎴戜滑甯屾湜鎶婃垜浠夋嫨鐨勫璞★紝鎷瘋礉鍒板壀鍒囨澘涓婏紝榪欎釜鍦ㄥ叾浠栬蔣浠朵腑宸茬粡鎴愬姛瀹炵幇錛屼絾瑕佹槸鍦ㄦ垜浠紑鍙戠殑嫻佺▼璁捐鍣ㄤ腑錛岃瀹炵幇榪欎釜鍔熻兘錛屾垜浠繕蹇呴』鑷繁鍐欎唬鐮佹潵瀹炵幇錛屽繀欏婚噸鍐機opyAction鐖剁被涓殑run鏂規硶錛屾妸鎴戜滑閫夋嫨鐨勫璞℃斁鍒板壀鍒囨澘涓婏紝浠g爜濡備笅錛?br /> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img id="Codehighlighter1_18_85_Open_Image" onclick="this.style.display='none'; Codehighlighter1_18_85_Open_Text.style.display='none'; Codehighlighter1_18_85_Closed_Image.style.display='inline'; Codehighlighter1_18_85_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_18_85_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_18_85_Closed_Text.style.display='none'; Codehighlighter1_18_85_Open_Image.style.display='inline'; Codehighlighter1_18_85_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedBlock.gif" align="top" alt="" /><span style="color: #0000ff">public</span><span style="color: #000000"> </span><span style="color: #0000ff">void</span><span style="color: #000000"> run() </span><span id="Codehighlighter1_18_85_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_18_85_Open_Text"><span style="color: #000000">{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />    Clipboard.getDefault().setContents(</span><span style="color: #0000ff">super</span><span style="color: #000000">.getSelectedObjects());<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" alt="" />}</span></span></div> <p>榪欐牱褰撴垜浠偣澶嶅埗鎸夐挳涔嬪悗錛屾祦紼嬭璁″櫒灝辨妸鎴戜滑閫夋嫨鐨勫唴瀹規斁鍒板壀鍒囨澘涓婏紝涓嬩竴姝ヨ鍋氱殑灝辨槸綺樿創浜嗐?/p> <p>瑕佷嬌綺樿創鎸夐挳鍙敤錛屾墍鍋氱殑淇敼鍜屽鍒剁被浼鹼紝鍦ㄧ被WorkflowActionContributor 鐨勬柟娉昫eclareGlobalActionKeys涓鍔燼ddGlobalActionKey(ActionFactory.PASTE.getId())</p> <p>澧炲姞PasteAction綾伙紝浠g爜濡備笅錛?/p> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><span style="color: #0000ff">package</span><span style="color: #000000"> com.example.workflow.actions;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> org.eclipse.gef.ui.actions.Clipboard;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> org.eclipse.gef.ui.actions.SelectionAction;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> org.eclipse.ui.IWorkbenchPart;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000"> org.eclipse.ui.actions.ActionFactory;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><br /> <img id="Codehighlighter1_267_523_Open_Image" onclick="this.style.display='none'; Codehighlighter1_267_523_Open_Text.style.display='none'; Codehighlighter1_267_523_Closed_Image.style.display='inline'; Codehighlighter1_267_523_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_267_523_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_267_523_Closed_Text.style.display='none'; Codehighlighter1_267_523_Open_Image.style.display='inline'; Codehighlighter1_267_523_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedBlock.gif" align="top" alt="" /></span><span style="color: #0000ff">public</span><span style="color: #000000"> </span><span style="color: #0000ff">class</span><span style="color: #000000"> PasteAction </span><span style="color: #0000ff">extends</span><span style="color: #000000"> SelectionAction</span><span id="Codehighlighter1_267_523_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_267_523_Open_Text"><span style="color: #000000">{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" /><br /> <img id="Codehighlighter1_311_367_Open_Image" onclick="this.style.display='none'; Codehighlighter1_311_367_Open_Text.style.display='none'; Codehighlighter1_311_367_Closed_Image.style.display='inline'; Codehighlighter1_311_367_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_311_367_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_311_367_Closed_Text.style.display='none'; Codehighlighter1_311_367_Open_Image.style.display='inline'; Codehighlighter1_311_367_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" alt="" />    </span><span style="color: #0000ff">public</span><span style="color: #000000"> PasteAction(IWorkbenchPart part) </span><span id="Codehighlighter1_311_367_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_311_367_Open_Text"><span style="color: #000000">{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />        </span><span style="color: #0000ff">super</span><span style="color: #000000">(part);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />        setId(ActionFactory.PASTE.getId());<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" alt="" />    }</span></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" /><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />    @Override<br /> <img id="Codehighlighter1_419_520_Open_Image" onclick="this.style.display='none'; Codehighlighter1_419_520_Open_Text.style.display='none'; Codehighlighter1_419_520_Closed_Image.style.display='inline'; Codehighlighter1_419_520_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_419_520_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_419_520_Closed_Text.style.display='none'; Codehighlighter1_419_520_Open_Image.style.display='inline'; Codehighlighter1_419_520_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" alt="" />    </span><span style="color: #0000ff">protected</span><span style="color: #000000"> </span><span style="color: #0000ff">boolean</span><span style="color: #000000"> calculateEnabled() </span><span id="Codehighlighter1_419_520_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_419_520_Open_Text"><span style="color: #000000">{        <br /> <img id="Codehighlighter1_471_491_Open_Image" onclick="this.style.display='none'; Codehighlighter1_471_491_Open_Text.style.display='none'; Codehighlighter1_471_491_Closed_Image.style.display='inline'; Codehighlighter1_471_491_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_471_491_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_471_491_Closed_Text.style.display='none'; Codehighlighter1_471_491_Open_Image.style.display='inline'; Codehighlighter1_471_491_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" alt="" />        </span><span style="color: #0000ff">if</span><span style="color: #000000">(Clipboard.getDefault().getContents()</span><span style="color: #000000">!=</span><span style="color: #0000ff">null</span><span style="color: #000000">)</span><span id="Codehighlighter1_471_491_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_471_491_Open_Text"><span style="color: #000000">{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />            </span><span style="color: #0000ff">return</span><span style="color: #000000"> </span><span style="color: #0000ff">true</span><span style="color: #000000">;<br /> <img id="Codehighlighter1_496_517_Open_Image" onclick="this.style.display='none'; Codehighlighter1_496_517_Open_Text.style.display='none'; Codehighlighter1_496_517_Closed_Image.style.display='inline'; Codehighlighter1_496_517_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_496_517_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_496_517_Closed_Text.style.display='none'; Codehighlighter1_496_517_Open_Image.style.display='inline'; Codehighlighter1_496_517_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" alt="" />        }</span></span><span style="color: #0000ff">else</span><span id="Codehighlighter1_496_517_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_496_517_Open_Text"><span style="color: #000000">{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />            </span><span style="color: #0000ff">return</span><span style="color: #000000"> </span><span style="color: #0000ff">false</span><span style="color: #000000">;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" alt="" />        }</span></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" alt="" />    }</span></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" /><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" alt="" />}</span></span></div> <br /> 榪欓噷瀵筆aste鑿滃崟鐨勫彲鐢ㄦт綔浜嗗垽鏂紝鍙湁褰撳壀鍒囨澘涓唴瀹逛笉涓虹┖鏃訛紝綺樿創鎸夐挳鎵嶅彲鐢紝鍚﹀垯涓轟笉鍙敤鐘?br /> 鎬併?br /> 鍙﹀榪樿鍦ㄧ紪杈戝櫒涓榪欎釜action榪涜鐢蟲槑錛?br /> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><span style="color: #000000">PasteAction pasteAction </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #0000ff">new</span><span style="color: #000000"> PasteAction((IWorkbenchPart) </span><span style="color: #0000ff">this</span><span style="color: #000000">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />getActionRegistry().registerAction(pasteAction);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />getSelectionActions().add(pasteAction.getId());</span></div> 鍒拌繖閲岋紝褰撴垜浠湪緙栬緫鍣ㄤ腑閫夋嫨媧誨姩錛岄夋嫨澶嶅埗涔嬪悗錛岀矘璐存寜閽彲鐢紝浣嗙偣綺樿創鎸夐挳鍏蜂綋鍋氫粈涔堬紝鎴戜滑榪樻病鏈夊畾涔夛紝瑕佸疄鐜拌繖涓仛浠涔堝姛鑳斤紝榪樺繀欏昏鐩朠asteAction鐖剁被涓殑run鏂規硶錛?br /> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img id="Codehighlighter1_18_559_Open_Image" onclick="this.style.display='none'; Codehighlighter1_18_559_Open_Text.style.display='none'; Codehighlighter1_18_559_Closed_Image.style.display='inline'; Codehighlighter1_18_559_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_18_559_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_18_559_Closed_Text.style.display='none'; Codehighlighter1_18_559_Open_Image.style.display='inline'; Codehighlighter1_18_559_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedBlock.gif" align="top" alt="" /><span style="color: #0000ff">public</span><span style="color: #000000"> </span><span style="color: #0000ff">void</span><span style="color: #000000"> run() </span><span id="Codehighlighter1_18_559_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_18_559_Open_Text"><span style="color: #000000">{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />        List list </span><span style="color: #000000">=</span><span style="color: #000000"> (List)Clipboard.getDefault().getContents();<br /> <img id="Codehighlighter1_110_556_Open_Image" onclick="this.style.display='none'; Codehighlighter1_110_556_Open_Text.style.display='none'; Codehighlighter1_110_556_Closed_Image.style.display='inline'; Codehighlighter1_110_556_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_110_556_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_110_556_Closed_Text.style.display='none'; Codehighlighter1_110_556_Open_Image.style.display='inline'; Codehighlighter1_110_556_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" alt="" />        </span><span style="color: #0000ff">for</span><span style="color: #000000">(</span><span style="color: #0000ff">int</span><span style="color: #000000"> i</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;i</span><span style="color: #000000"><</span><span style="color: #000000">list.size();i</span><span style="color: #000000">++</span><span style="color: #000000">)</span><span id="Codehighlighter1_110_556_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_110_556_Open_Text"><span style="color: #000000">{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />            AbstractActivityEditPart part </span><span style="color: #000000">=</span><span style="color: #000000"> (AbstractActivityEditPart)list.get(i);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />            AbstractActivity model </span><span style="color: #000000">=</span><span style="color: #000000"> (AbstractActivity)part.getModel();<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />            WorkflowProcess parent </span><span style="color: #000000">=</span><span style="color: #000000"> (WorkflowProcess)part.getParent().getModel();<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />            AbstractActivity clone </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #0000ff">new</span><span style="color: #000000"> AbstractActivity();<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />            clone.setName(</span><span style="color: #000000">"</span><span style="color: #000000">CloneActivity</span><span style="color: #000000">"</span><span style="color: #000000">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />            clone.setLocation(model.getLocation());<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />            clone.setSize(model.getSize());<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />            clone.setFigure(model.getFigure());<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />            parent.addChild(clone);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" alt="" />        }</span></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" alt="" />    }</span></span></div> <br /> 榪欓噷鍙槸鍋氫簡涓涓嬬畝鍗曞鐞嗭紝鏇村鏉傜殑閫昏緫鐢ㄦ埛鍙互鏍規嵁鑷繁搴旂敤鐨勯渶瑕侊紝榪欓噷鐨剅un鍙互閫氳繃鎵ц涓涓懡浠わ紝浠ユ敮鎸佹挙閿錛岄噸鍋氬姛鑳斤紝鍘熺悊灝辨槸榪欐牱鐨勶紝鍙﹀鍓垏鍔熻兘鍜岃繖綾諱技錛屽彧鏄湪澶嶅埗鍩虹涓婂浜嗕釜鍒犻櫎鎿嶄綔銆? <img src ="http://m.tkk7.com/jacky9881/aggbug/175815.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/jacky9881/" target="_blank">鐜╄漿Java</a> 2008-01-17 08:27 <a href="http://m.tkk7.com/jacky9881/archive/2008/01/17/175815.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>嫻佺▼璁捐鍣ㄥ紑鍙戝崄涓錛堟墿灞曠偣閮ㄥ垎錛?/title><link>http://m.tkk7.com/jacky9881/archive/2008/01/16/175576.html</link><dc:creator>鐜╄漿Java</dc:creator><author>鐜╄漿Java</author><pubDate>Wed, 16 Jan 2008 00:42:00 GMT</pubDate><guid>http://m.tkk7.com/jacky9881/archive/2008/01/16/175576.html</guid><wfw:comment>http://m.tkk7.com/jacky9881/comments/175576.html</wfw:comment><comments>http://m.tkk7.com/jacky9881/archive/2008/01/16/175576.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://m.tkk7.com/jacky9881/comments/commentRss/175576.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/jacky9881/services/trackbacks/175576.html</trackback:ping><description><![CDATA[     鎽樿:   鍒扮洰鍓嶄負姝紝涓涓畬鏁寸殑嫻佺▼璁捐鍣ㄥ凡鍩烘湰瀹屾垚錛屼負浜嗗鍔犵郴緇熺殑鍙墿灞曟э紝姣斿鐩墠媧誨姩鐨勭被鍨嬫湁涓夌錛屽亣濡備互鍚庢垜浠澧炲姞媧誨姩鐨勭被鍨嬶紝鎬庝箞鍔烇紵鎸夌収鐩墠鐨勫仛娉曪紝鎴戜滑鍙兘淇敼浠g爜錛屼負浜嗕嬌緋葷粺鐨勬墿灞曟ф洿濂斤紝鍗蟲垜浠鏋滆澧炲姞媧誨姩綾誨瀷錛屽彧闇瑕佷慨鏀歸厤緗枃浠訛紝鑰屾棤欏諱慨鏀圭幇鏈夌郴緇熺殑浠g爜錛屼負姝わ紝鎴戜滑鎶婃椿鍔ㄧ被鍨嬪畾涔変竴涓墿灞曠偣錛岀敤鎴蜂互鍚庤澧炲姞媧誨姩綾誨瀷錛屽彧闇鎵╁睍榪欎釜鎵╁睍鐐瑰氨鍙互浜嗐傦紙浠g爜錛?鍦╬lugin.xml...  <a href='http://m.tkk7.com/jacky9881/archive/2008/01/16/175576.html'>闃呰鍏ㄦ枃</a><img src ="http://m.tkk7.com/jacky9881/aggbug/175576.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/jacky9881/" target="_blank">鐜╄漿Java</a> 2008-01-16 08:42 <a href="http://m.tkk7.com/jacky9881/archive/2008/01/16/175576.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>嫻佺▼璁捐鍣ㄥ紑鍙戝崄錛堟柊寤哄悜瀵奸儴鍒嗭級http://m.tkk7.com/jacky9881/archive/2008/01/15/175352.html鐜╄漿Java鐜╄漿JavaTue, 15 Jan 2008 00:45:00 GMThttp://m.tkk7.com/jacky9881/archive/2008/01/15/175352.htmlhttp://m.tkk7.com/jacky9881/comments/175352.htmlhttp://m.tkk7.com/jacky9881/archive/2008/01/15/175352.html#Feedback0http://m.tkk7.com/jacky9881/comments/commentRss/175352.htmlhttp://m.tkk7.com/jacky9881/services/trackbacks/175352.html闃呰鍏ㄦ枃

]]>
嫻佺▼璁捐鍣ㄥ紑鍙戜節錛堝睘鎬ч〉閮ㄥ垎錛?/title><link>http://m.tkk7.com/jacky9881/archive/2008/01/14/175062.html</link><dc:creator>鐜╄漿Java</dc:creator><author>鐜╄漿Java</author><pubDate>Mon, 14 Jan 2008 00:59:00 GMT</pubDate><guid>http://m.tkk7.com/jacky9881/archive/2008/01/14/175062.html</guid><wfw:comment>http://m.tkk7.com/jacky9881/comments/175062.html</wfw:comment><comments>http://m.tkk7.com/jacky9881/archive/2008/01/14/175062.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://m.tkk7.com/jacky9881/comments/commentRss/175062.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/jacky9881/services/trackbacks/175062.html</trackback:ping><description><![CDATA[     鎽樿: 榪欎竴鑺備富瑕佷粙緇嶅浣曠粰緙栬緫鍣ㄥ鍔犲睘鎬ч〉錛屽睘鎬ч〉涓昏鐢ㄦ潵鏄劇ず緙栬緫鍣ㄤ腑閫変腑瀵硅薄鐨勫睘鎬х殑錛屾瘮濡傚湪緙栬緫鍣ㄩ変腑媧誨姩錛屽彲浠ュ湪灞炴ч〉涓婃樉紺烘椿鍔ㄧ殑澶у皬鍜屼綅緗瓑淇℃伅錛岃瀹炵幇榪欎竴鍔熻兘錛岄鍏堣璁╂ā鍨嬪疄鐜癐PropertySource鎺ュ彛錛屾垜浠妯″瀷鐨勫熀綾籑odelElement瀹炵幇榪欎釜鎺ュ彛錛屽熀綾昏瀹炵幇榪欐帴鍙d腑鍏釜鏂規硶錛岃繖鍏釜鏂規硶濡備笅錛? /** *//** An empty p...  <a href='http://m.tkk7.com/jacky9881/archive/2008/01/14/175062.html'>闃呰鍏ㄦ枃</a><img src ="http://m.tkk7.com/jacky9881/aggbug/175062.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/jacky9881/" target="_blank">鐜╄漿Java</a> 2008-01-14 08:59 <a href="http://m.tkk7.com/jacky9881/archive/2008/01/14/175062.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>嫻佺▼璁捐鍣ㄥ紑鍙戝叓錛堝ぇ綰茶鍥鵑儴鍒嗭級http://m.tkk7.com/jacky9881/archive/2008/01/11/174481.html鐜╄漿Java鐜╄漿JavaFri, 11 Jan 2008 00:44:00 GMThttp://m.tkk7.com/jacky9881/archive/2008/01/11/174481.htmlhttp://m.tkk7.com/jacky9881/comments/174481.htmlhttp://m.tkk7.com/jacky9881/archive/2008/01/11/174481.html#Feedback1http://m.tkk7.com/jacky9881/comments/commentRss/174481.htmlhttp://m.tkk7.com/jacky9881/services/trackbacks/174481.html闃呰鍏ㄦ枃

]]>
嫻佺▼璁捐鍣ㄥ紑鍙戜竷錛堣漿縐繪嫄鐐歸儴鍒嗭級http://m.tkk7.com/jacky9881/archive/2008/01/10/174184.html鐜╄漿Java鐜╄漿JavaThu, 10 Jan 2008 01:46:00 GMThttp://m.tkk7.com/jacky9881/archive/2008/01/10/174184.htmlhttp://m.tkk7.com/jacky9881/comments/174184.htmlhttp://m.tkk7.com/jacky9881/archive/2008/01/10/174184.html#Feedback2http://m.tkk7.com/jacky9881/comments/commentRss/174184.htmlhttp://m.tkk7.com/jacky9881/services/trackbacks/174184.html闃呰鍏ㄦ枃

]]>
嫻佺▼璁捐鍣ㄥ紑鍙戝叚錛堣漿縐誨緩绔嬪拰鍒犻櫎錛?/title><link>http://m.tkk7.com/jacky9881/archive/2008/01/09/173935.html</link><dc:creator>鐜╄漿Java</dc:creator><author>鐜╄漿Java</author><pubDate>Wed, 09 Jan 2008 03:10:00 GMT</pubDate><guid>http://m.tkk7.com/jacky9881/archive/2008/01/09/173935.html</guid><wfw:comment>http://m.tkk7.com/jacky9881/comments/173935.html</wfw:comment><comments>http://m.tkk7.com/jacky9881/archive/2008/01/09/173935.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://m.tkk7.com/jacky9881/comments/commentRss/173935.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/jacky9881/services/trackbacks/173935.html</trackback:ping><description><![CDATA[     鎽樿:       鍝釜妯″瀷鐨勬帶鍒跺櫒鑳芥帴鍙楀湪媧誨姩涔嬮棿寤虹珛杞Щ鐨勮姹傚憿錛屽彧鏈夋椿鍔ㄦā鍨嬬殑鎺у埗鍣ㄤ簡錛屽洜涓烘椿鍔ㄦā鍨嬩腑緇存姢鐫媧誨姩鐨勮緭鍏ュ拰杈撳嚭杞Щ鐨勫垪琛紝鍦ㄦ椿鍔ㄦ帶鍒跺櫒澧炲姞絳栫暐錛屼嬌璇ユ帶鍒跺櫒鑳芥帴鍙楀緩绔嬭漿縐葷殑璇鋒眰錛屼唬鐮佸涓嬶細 protectedvoid createEditPolicies() {    &nbs...  <a href='http://m.tkk7.com/jacky9881/archive/2008/01/09/173935.html'>闃呰鍏ㄦ枃</a><img src ="http://m.tkk7.com/jacky9881/aggbug/173935.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/jacky9881/" target="_blank">鐜╄漿Java</a> 2008-01-09 11:10 <a href="http://m.tkk7.com/jacky9881/archive/2008/01/09/173935.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>嫻佺▼璁捐鍣ㄥ紑鍙戜簲錛堢Щ鍔ㄥ拰鍒犻櫎媧誨姩閮ㄥ垎錛?/title><link>http://m.tkk7.com/jacky9881/archive/2008/01/07/173390.html</link><dc:creator>鐜╄漿Java</dc:creator><author>鐜╄漿Java</author><pubDate>Mon, 07 Jan 2008 09:16:00 GMT</pubDate><guid>http://m.tkk7.com/jacky9881/archive/2008/01/07/173390.html</guid><wfw:comment>http://m.tkk7.com/jacky9881/comments/173390.html</wfw:comment><comments>http://m.tkk7.com/jacky9881/archive/2008/01/07/173390.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/jacky9881/comments/commentRss/173390.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/jacky9881/services/trackbacks/173390.html</trackback:ping><description><![CDATA[     鎽樿:       榪欎竴鑺傛垜浠潵浠嬬粛濡備綍鍦ㄧ紪杈戝櫒涓Щ鍔ㄦ椿鍔紝鏀瑰彉媧誨姩鐨勫ぇ灝忓拰鍒犻櫎媧誨姩錛屽湪嫻佺▼鎺у埗鍣ㄤ腑宸茬粡瀹夎鐨勭瓥鐣orkflowProcessXYLayoutEditPolicy錛屽彲浠ユ帴鍙楃Щ鍔ㄦ椿鍔ㄥ拰鏀瑰彉媧誨姩澶у皬鐨勮姹傦紝浣嗕笉鑳芥帴鍙楀垹闄ゆ椿鍔ㄧ殑璇鋒眰錛岃澶勭悊鍒犻櫎媧誨姩鐨勮姹傦紝蹇呴』鍦ㄦ椿鍔ㄦ帶鍒跺櫒涓畨瑁呯瓥鐣ャ?     &nb...  <a href='http://m.tkk7.com/jacky9881/archive/2008/01/07/173390.html'>闃呰鍏ㄦ枃</a><img src ="http://m.tkk7.com/jacky9881/aggbug/173390.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/jacky9881/" target="_blank">鐜╄漿Java</a> 2008-01-07 17:16 <a href="http://m.tkk7.com/jacky9881/archive/2008/01/07/173390.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>嫻佺▼璁捐鍣ㄥ紑鍙戝洓(絳栫暐鍜屽懡浠ら儴鍒?http://m.tkk7.com/jacky9881/archive/2008/01/04/172635.html鐜╄漿Java鐜╄漿JavaFri, 04 Jan 2008 00:49:00 GMThttp://m.tkk7.com/jacky9881/archive/2008/01/04/172635.htmlhttp://m.tkk7.com/jacky9881/comments/172635.htmlhttp://m.tkk7.com/jacky9881/archive/2008/01/04/172635.html#Feedback0http://m.tkk7.com/jacky9881/comments/commentRss/172635.htmlhttp://m.tkk7.com/jacky9881/services/trackbacks/172635.html闃呰鍏ㄦ枃

]]>
嫻佺▼璁捐鍣ㄥ紑鍙戜笁(緙栬緫鍣ㄩ儴鍒?http://m.tkk7.com/jacky9881/archive/2008/01/03/172356.html鐜╄漿Java鐜╄漿JavaThu, 03 Jan 2008 00:54:00 GMThttp://m.tkk7.com/jacky9881/archive/2008/01/03/172356.htmlhttp://m.tkk7.com/jacky9881/comments/172356.htmlhttp://m.tkk7.com/jacky9881/archive/2008/01/03/172356.html#Feedback3http://m.tkk7.com/jacky9881/comments/commentRss/172356.htmlhttp://m.tkk7.com/jacky9881/services/trackbacks/172356.html闃呰鍏ㄦ枃

]]>
嫻佺▼璁捐鍣ㄥ紑鍙戜簩(鎺у埗鍣ㄥ拰瑙嗗浘閮ㄥ垎)http://m.tkk7.com/jacky9881/archive/2008/01/02/172254.html鐜╄漿Java鐜╄漿JavaWed, 02 Jan 2008 08:51:00 GMThttp://m.tkk7.com/jacky9881/archive/2008/01/02/172254.htmlhttp://m.tkk7.com/jacky9881/comments/172254.htmlhttp://m.tkk7.com/jacky9881/archive/2008/01/02/172254.html#Feedback0http://m.tkk7.com/jacky9881/comments/commentRss/172254.htmlhttp://m.tkk7.com/jacky9881/services/trackbacks/172254.html闃呰鍏ㄦ枃

]]>
嫻佺▼璁捐鍣ㄥ紑鍙戜竴(妯″瀷閮ㄥ垎)http://m.tkk7.com/jacky9881/archive/2008/01/02/172223.html鐜╄漿Java鐜╄漿JavaWed, 02 Jan 2008 07:32:00 GMThttp://m.tkk7.com/jacky9881/archive/2008/01/02/172223.htmlhttp://m.tkk7.com/jacky9881/comments/172223.htmlhttp://m.tkk7.com/jacky9881/archive/2008/01/02/172223.html#Feedback5http://m.tkk7.com/jacky9881/comments/commentRss/172223.htmlhttp://m.tkk7.com/jacky9881/services/trackbacks/172223.html闃呰鍏ㄦ枃

]]>
主站蜘蛛池模板: 久久精品国产亚洲av瑜伽| 亚洲综合久久久久久中文字幕| 中文国产成人精品久久亚洲精品AⅤ无码精品 | 中国在线观看免费的www| 久久国产乱子伦精品免费看| 久久久免费精品re6| 国国内清清草原免费视频99| 日韩中文无码有码免费视频 | 一级做α爱过程免费视频| 中文字幕乱码一区二区免费| 日本人的色道免费网站| 国产精品四虎在线观看免费| 国产亚洲情侣一区二区无| 亚洲毛片免费视频| www亚洲精品久久久乳| 国产日韩在线视频免费播放| 久久免费的精品国产V∧| 日韩精品免费电影| 亚洲乱码中文字幕综合| 亚洲性猛交xx乱| 日韩精品无码永久免费网站| 毛片无码免费无码播放| 日韩一区二区在线免费观看 | 一级做a爱过程免费视| 亚洲一区二区三区免费观看| 国产成人无码区免费A∨视频网站| 亚洲国产日韩在线视频| 91在线亚洲综合在线| 永久免费观看黄网站| 亚洲电影在线免费观看| 亚洲国产精品成人一区| 亚洲精品视频免费看| 黄色一级毛片免费看| 久久不见久久见免费视频7| 免费观看午夜在线欧差毛片 | 亚洲午夜精品一区二区公牛电影院| 国产亚洲成在线播放va| 最近中文字幕完整免费视频ww| 免费国产在线观看不卡| 亚洲综合一区二区国产精品| 国产AV无码专区亚洲AV蜜芽|