|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Teamcenter胖客户端开发】teamcenter菜单添加图文教程<1>
0 f$ n: j2 [6 o1 H( n1 o/ ~4 C3 [这部分内容实际上是eclipse的插件开发的功能, 这里做个简单分类,菜单文件的扩展点都是 <extensionpoint="org.eclipse.ui.menus">,添加菜单就是在这里面添加内容。这里只要注意location即可!
' Q# [ v; ]1 v! a% I& S" V(1)在主工具条上添加菜单。
9 d5 q1 U" n! y$ k/ T <menuContribution" f) e }, h& Q8 W7 a3 \7 c
locationURI="menu:org.eclipse.ui.main.menu?after=additions">/ m6 s& M2 b7 h e
<menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
& I! e% G2 k$ V9 j <command
! I$ E1 }& W( t) x) ? commandId="com.plmhome.createFolder.commands.sampleCommand"
0 G: x$ q- e4 } mnemonic="S"
) E: o: \' d, A$ d6 X) \$ ` id="com.plmhome.createFolder.menus.sampleCommand">
1 S6 c0 Z7 w$ m2 b, B! a0 d </command>
e- b) [: [- r- ?, p) L </menu>$ L y. x7 Q$ J) E" B( Z8 ^
</menuContribution>$ H! U6 d" i0 K2 _" a$ C+ w+ `) H
2 w: U( w- ^8 X8 J1 e( l* D(2)在工具功能的后面添加按钮。
& j7 x; j I% Q/ m: i# g' h$ @; ~ <menuContribution
9 S( |; @. c+ h# m- O& q" F1 F, q locationURI="menu:tools?after=additions">
; V% J4 W1 C" q6 X5 Z, H4 o1 K <command
# d8 e7 i6 D0 N5 |! n3 |8 G6 I commandId="com.plmhome.createFolder.commands.sampleCommand"/ {! [+ a: u0 @8 W& I2 d e( G
mnemonic="S"/ U ^& e8 f. s2 E- ]
id="com.plmhome.createFolder.menus.sampleCommand">7 b2 R' l1 d$ A4 G7 t3 u- |
</command>6 ]0 C& ]4 u5 u) y- a2 o
</menuContribution>
& p1 S. {: X$ f$ }0 q" c W
" |! X: N! J8 H, [* ]4 `(3)在右键弹出菜单加按钮5 D/ ^- g3 j* Y
<menuContribution
3 n {# J% F0 m3 U0 |& |* H% M locationURI="popup:org.eclipse.ui.popup.any?after=additions">" z8 R7 c2 g: O% h
<command. V; W B3 D u. J' r& }
commandId="com.plmhome.createFolder.commands.sampleCommand"
7 o5 j X, X9 D/ I- ]! V: F0 s/ i mnemonic="S"& g2 n' }5 Y$ v, v
id="com.plmhome.createFolder.menus.sampleCommand">' |" g4 d6 H! t3 g. u$ k" c
</command>
. o3 z3 V5 [+ h </menuContribution>
9 ~2 j# \, y6 s% g(4)在具体的菜单后面加功能按钮; V, D1 S( v/ Q. F# P9 [
<menuContribution: q$ ?3 J' Q# f, [2 [0 ]
locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">' i. I; L+ g2 G# I4 S
<menu
0 h4 _8 f$ M* E7 D& M+ U6 a' k label="PLMHomeToolKits"
& x5 |# O2 x% r- ^ mnemonic="M" }% M1 X( \# ~. r
id="com.plmhome.createFolder.menus.sampleMenu">/ v; g# L' X( e% K( ?4 G6 M
<command. Y) n6 N/ Q7 ?. }$ q' w
commandId="com.plmhome.createFolder.commands.sampleCommand"
' S/ h |% ^6 }( X" | mnemonic="S"
$ o, V9 d9 X! O; _, B id="com.plmhome.createFolder.menus.sampleCommand">. y+ \/ Q J# w# L# c, H
</command>! i9 a6 k1 T) ]/ ?" ~
</menu>; c: w' p+ d$ s7 J! ?9 D
</menuContribution>
/ \" P( R' j, w4 D
3 _; H3 t& ]4 u2 s \4 Z# T% V2 f(5)指定位置,直接加按钮
. |. L1 x& H2 h z <menuContribution! m' `2 p' T' z7 J* g* R! t6 h
locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">1 }, B! q! i: R! c% |- q# i
<command" d# W# y6 Q) k( ` Z5 K
commandId="com.plmhome.createFolder.commands.sampleCommand"
' } `; x6 f" [ icon="icons/sample.gif"4 t( ^. c) Z. G8 @( @- Q$ R% O
tooltip="Say hello world"/ z( @. N; i5 h, ]8 @- S
id="com.plmhome.createFolder.toolbars.sampleCommand">" ^! O; ]. o" ]$ q' i( \; N; B) T k
</command>
/ k5 u' `8 y9 w, e. s% u$ d5 O </menuContribution>! f. h& B4 B/ z1 v. V7 u1 Y
. `2 E9 m; S0 f2 j) Z2 q) a(6)加工具条按钮) f6 u. h) L) {" _" I" l5 p
<menuContribution
7 y* N* L4 K1 v# a: O7 [( N; J. l locationURI="toolbar:navigator_Toolbar?after=additions">: t6 M) m i) Q$ p2 f- {8 a
<toolbar- n" M. {4 |) `4 d. h
id="com.plmhome.createFolder.toolbars.sampleToolbar">
3 p$ E& g# n( K1 l) q- E* E* W <command$ x* P: I. `8 _. B) l0 D" r1 J- m
commandId="com.plmhome.createFolder.commands.sampleCommand"
& c3 `3 K; A' A icon="icons/sample.gif": c+ B* D( v$ N0 A4 _0 t! j
tooltip="Say hello world". E0 ~7 U) P& Y4 R! i) D
id="com.plmhome.createFolder.toolbars.sampleCommand">
, U& n- K' o3 u </command>1 A/ ?1 M [1 {% F
</toolbar>" B+ v" A/ G" W; f8 \) J
</menuContribution>
# b. F5 P: O: U. e, j, O& ^( |* ]
; Z- v4 n+ ]* C3 G, K: Q( _+ w: M
2 h6 A7 n) x9 z4 j+ P完整的例子如下:5 S9 [9 X/ y/ z" F
h' ~: ?$ v9 q7 J0 ^" Q
<?xml version="1.0" encoding="UTF-8"?>' W. Q7 y8 w/ K3 I
<?eclipse version="3.4"?>
7 A( ~/ M4 ]/ a4 W8 L0 i<plUGin>$ ]' c& V2 n* W" v6 F5 V
* c( P1 [+ N! U H/ w <extension% t2 {( V" b+ Q0 K6 x( B5 n3 h( P2 f
point="org.eclipse.ui.commands">
$ r. z2 e# J; b0 ?/ T <category
2 V' m' U' e4 k( M: b name="Sample Category"
+ G- e0 b2 I: P) \, e id="com.plmhome.createFolder.commands.category">6 w+ H# f+ B+ W9 S0 ~9 c$ v$ @0 v) c
</category>
, q) ], R: \8 T p& n% f; ]5 m. ?+ W8 Q2 W5 b3 T9 n
<command4 C; ^/ P, O# U
name="PLMHome CreateFolder"( n& Y, R4 _! b5 ^& s( P
categoryId="com.plmhome.createFolder.commands.category"
. I# x/ ]+ t( M0 F- I id="com.plmhome.createFolder.commands.sampleCommand">
7 s' z* ^" x' {9 k. E </command>
+ ?, J! S' H. c7 c. M8 `$ d7 j" f, C# n0 T7 i& Y
</extension> A+ V. o+ t- x# r1 i4 R; |: |3 ]+ L
<extension, m$ J a/ t+ `7 \/ D
point="org.eclipse.ui.handlers">
% a) p+ l( b; e) T4 [9 c <handler8 Q9 P( ~6 [7 N7 D/ V
commandId="com.plmhome.createFolder.commands.sampleCommand"9 R& i3 r3 a* ~& _. F
class="com.plmhome.createfolder.handlers.SampleHandler">
. L! ^% f! R+ c4 | </handler>
6 ?' M/ i, ^8 z# s/ D" k </extension>' ^" x6 Y: y& o, n8 R
<extension
: v8 @- Z C0 E; j: t point="org.eclipse.ui.bindings">
$ o- x# S1 r! T! G$ e- R2 I <key# A0 k1 G, S9 G! N% y9 i
commandId="com.plmhome.createFolder.commands.sampleCommand"2 q0 Y7 Z. \+ l9 @3 F
contextId="org.eclipse.ui.contexts.window"# ?) g. e& u% o2 M+ C7 Y" z
sequence="M1+6"/ ~1 f3 b1 Q" u% v+ f
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration">" @" ?) m+ S6 W* d& ~
</key>* j; r; \4 ]! x% J
</extension>
( K* c, j$ ?; z. O/ D <extension5 \4 `, k$ F$ z% X ^+ o
point="org.eclipse.ui.menus">/ |7 _' a" R. @
* J2 `4 t1 P5 _! m) J
<menuContribution6 r5 a7 s8 v1 C1 ^# |% J5 w* F
locationURI="menu:org.eclipse.ui.main.menu?after=additions">
. j$ Q1 |3 g7 B3 g5 s I <menu id="com.plmhome.plmhomeTool" label="PLMHome ToolKits">
" d X1 [9 m! i1 w) ^) c1 ?- M. O <command
9 j( G3 K; F# B/ P z0 U4 [! o commandId="com.plmhome.createFolder.commands.sampleCommand"
+ G! p: |) I# \ mnemonic="S"
: W, C6 T8 _- D id="com.plmhome.createFolder.menus.sampleCommand">
' p2 k$ G9 Q- \2 Y$ Q </command>
9 e' o2 V, J) d/ M8 E+ ^ </menu>
; U% y. K% j1 J6 B+ v. X" u </menuContribution>
Q7 \1 J; } a# C7 z& E% o
* y, ~8 e, ?; Q6 x2 Z/ Q/ }+ Y) o5 U7 f' V) ]) l
/ [- `3 V# ^$ Z* D! i2 j- M0 w <menuContribution6 }3 ^3 \7 U3 r5 Q/ [
locationURI="menu:tools?after=additions">
( `8 F: o, B) y- G5 L7 f6 K <command% \; h! J* H2 b1 V* ~
commandId="com.plmhome.createFolder.commands.sampleCommand"
5 i) [& u7 K( U# C% V+ k7 d9 F% _ mnemonic="S"
3 e7 h# M+ M7 O7 J id="com.plmhome.createFolder.menus.sampleCommand">3 J& I5 J8 t5 P
</command>' j! x, P' B6 Q
</menuContribution>
/ g. s$ q( z4 i. F$ ~) H9 l8 U/ a" a
: ~5 f/ K/ y3 n3 [2 r0 m4 R8 B) h. I7 e9 e8 n# d
<menuContribution* G L7 Z1 T1 m/ {
locationURI="popup:org.eclipse.ui.popup.any?after=additions">
: Y' i9 X! R) I* Q9 ]1 N: d# a <command. e1 b/ V4 r8 |4 u" b: K& ~
commandId="com.plmhome.createFolder.commands.sampleCommand"1 g$ C4 u0 t p, D2 t3 B7 Y
mnemonic="S"
7 A. ~, Q$ Z$ |8 G4 B m id="com.plmhome.createFolder.menus.sampleCommand">
* ]- D0 j6 p# e, Y. Z </command>' V* `/ @# z) z! k/ y0 w) C
</menuContribution>
+ f, }, ` }! R5 q; S! L6 R5 y! \/ v+ R
) M- c9 v) z' a" X3 I <menuContribution
2 `4 d# C1 K' Q9 z4 Z* L locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">2 A4 j+ l. f& X# z6 n. _" C
<menu
& E2 {2 |4 ] }& w8 T label="PLMHomeToolKits"
: t2 v8 }- f& I. H mnemonic="M"0 I4 u1 U$ p% C$ ~9 v* d2 y+ X* Z
id="com.plmhome.createFolder.menus.sampleMenu"># p* x; y! h- C" j
<command/ M: y6 s, [/ \- \
commandId="com.plmhome.createFolder.commands.sampleCommand"3 j( Z, ?5 L) P: }7 A
mnemonic="S"/ o; c1 h6 C6 f& x* |1 l2 N
id="com.plmhome.createFolder.menus.sampleCommand">5 T' i f+ V& {
</command>
" _, H9 x8 C6 P$ b </menu>
m, c& v" P }6 [ </menuContribution>6 B2 ^( B r+ J: q4 [7 I6 s
# M5 ^# `4 y3 [4 N( y( G8 K <menuContribution& @3 |: D+ A, u( c7 S, P# t
locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">8 L8 K9 o5 x/ D
<command7 Q1 h# Z0 \7 \8 K' ]6 y
commandId="com.plmhome.createFolder.commands.sampleCommand"
( U8 _% N7 r. o icon="icons/sample.gif"
/ R5 A* Q; S5 L3 k tooltip="Say hello world"
# j8 I! n R+ ?4 g8 o, f id="com.plmhome.createFolder.menus.sampleCommand">
2 U& Y7 o8 \: S3 B+ x </command>
% G! |( t: P& b: B. H </menuContribution>; a: y- t% [$ C, r
/ a# q/ J3 s; {- d% F! C: ?' I4 h
- N( [ q' S5 Q% U, Z" C0 p <menuContribution- Q$ Q+ Q, \& Q
locationURI="toolbar:navigator_Toolbar?after=additions">0 H, M# B K! s- J2 L& A
<toolbar. R3 E0 P% q' h- m
id="com.plmhome.createFolder.toolbars.sampleToolbar">: K9 |3 [/ {9 f' b/ }5 l, z2 E
<command7 }( M: o9 C+ k
commandId="com.plmhome.createFolder.commands.sampleCommand"
4 e. |: Y1 m* M2 ?; m. c# X icon="icons/sample.gif"
e |2 _( S8 F' M/ f K& l tooltip="Say hello world"
( G. Q, y% f0 |# @: o) k& y X id="com.plmhome.createFolder.toolbars.sampleCommand">
& u( Q0 Z) \- L6 W, j2 X </command>6 P( W% D) F* p7 L' ?0 V
</toolbar>
! d1 t7 z6 w: E </menuContribution>
7 V7 A* M( A: n0 v; h6 S; G* F& f' ]2 U% L n
3 ~2 W) s6 G! N" D. \
</extension>
( Y: ]6 t- h1 Y* Q4 r8 ]1 d5 Q) _' m7 C% }2 f3 W
</plugin>) w$ V! x( f& f! ]: `4 c8 g5 [! W& F3 \
2 u q$ S6 F' P6 y9 c
% e* i- N5 D6 g+ i g" t! W2 |* J5 a! N) c/ P
|
|