PLM之家PLMHome-工业软件践行者

【Teamcenter胖客户端开发】teamcenter菜单添加图文教程<1>

[复制链接]

2015-4-1 14:48:17 7982 0

admin 发表于 2015-4-1 14:48:17 |阅读模式

admin 楼主

2015-4-1 14:48:17

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
Teamcenter胖客户端开发】teamcenter菜单添加图文教程<1>) W3 n, H; G5 I* \- L0 \* E
这部分内容实际上是eclipse的插件开发的功能, 这里做个简单分类,菜单文件的扩展点都是  <extensionpoint="org.eclipse.ui.menus">,添加菜单就是在这里面添加内容。这里只要注意location即可!6 p4 ]5 x% D( r- p( G' ^
(1)在主工具条上添加菜单。
1 e/ i4 o6 {5 Q$ A. Z  <menuContribution
5 n" Z( X/ C4 f; B( X            locationURI="menu:org.eclipse.ui.main.menu?after=additions">
5 f$ V  r+ _3 k, c/ ~            <menu id="com.plmhome.plmhomeTool"  label="PLMHome ToolKits">
8 e1 m1 u1 R6 }  U1 b            <command
) r9 e9 q+ [! O6 F/ N" ~/ [                  commandId="com.plmhome.createFolder.commands.sampleCommand"* k/ q8 t  o# b" k" u7 _5 J( P9 a
                  mnemonic="S"# ?( [1 o2 u% n& q' @& C* |7 u' ^, i
                  id="com.plmhome.createFolder.menus.sampleCommand">' y6 l: F7 e) ]9 E
            </command>) y: W7 h* M  E* T9 O
            </menu>
# w- ~" S0 ^% f  ]8 i1 g8 [      </menuContribution>
. }6 ~- s/ k3 Q2 w% q; d# k& |& e% ^  r8 D( m6 z
(2)在工具功能的后面添加按钮。
& o0 K* ~1 V  \  <menuContribution
2 p  f6 S$ a& X; u. K* Z            locationURI="menu:tools?after=additions">" o: s, t& L2 A
            <command
. n  I8 O1 J; T' l, P4 a                  commandId="com.plmhome.createFolder.commands.sampleCommand"
- u9 v3 M+ U+ F* i$ a, M                  mnemonic="S"
6 V$ m1 {4 L8 V8 X- E! I+ @. O                  id="com.plmhome.createFolder.menus.sampleCommand">
& c0 c! F( }& d! o: t            </command>
5 g' _  o6 G/ o7 j2 J" ]   </menuContribution>
4 `1 y1 A: ~9 a0 T, }" O7 j# y8 K+ ~7 x# Q; q( `7 r- o! Y
(3)在右键弹出菜单加按钮
, I; D+ C3 G. T! r. X      <menuContribution0 T; h1 C9 i; \. H# K: k! Q
            locationURI="popup:org.eclipse.ui.popup.any?after=additions">3 g! o7 D/ G0 m- P
            <command! o6 p. L$ k# j
                  commandId="com.plmhome.createFolder.commands.sampleCommand"
- E' }7 U1 w) j4 Q7 E" u                  mnemonic="S": F! o4 d: N' t, A
                  id="com.plmhome.createFolder.menus.sampleCommand">
4 h3 i+ C/ n. A9 J0 w# u6 u. w4 c# w            </command>
' J7 S' e4 z4 n- T      </menuContribution>
# p' b/ s6 }. ]* G1 h% V(4)在具体的菜单后面加功能按钮
: `8 v+ m' E+ t$ X: P( `6 ?* b, O- b8 d  K      <menuContribution- F. K' k' }2 ~8 F, v4 ~0 v; h
            locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">
/ {; T+ z! i& j4 z1 x         <menu- ~7 i$ P0 i  W5 U. G  A& f: {
               label="PLMHomeToolKits"
& K1 |' }6 Q' N6 F) p1 K* c( Y1 p               mnemonic="M"8 S6 q8 V( v+ `; ]9 `4 n7 {. t
               id="com.plmhome.createFolder.menus.sampleMenu">
( z4 \( u# F0 M9 C            <command
# H- C7 b9 l- V7 n9 k                  commandId="com.plmhome.createFolder.commands.sampleCommand"* o# Q8 j1 \7 D" \- J1 ?- B
                  mnemonic="S". s+ n( {) j9 A5 s& u) b3 q% ]
                  id="com.plmhome.createFolder.menus.sampleCommand">, ~$ f! k6 E' _; ?  K. o
            </command>
7 d, ]. f( H7 y0 H4 U+ j         </menu>
  N7 y, d* \$ l* D      </menuContribution>
; t0 f6 V/ d! d5 q6 A9 X% z( ^  y; f4 D
(5)指定位置,直接加按钮3 d/ E: N" ^! z  B: Q
      <menuContribution" ^- s0 E1 @' |; b4 G% G9 N
            locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">; O% X3 f. @  T1 f
            <command
1 i  _$ }4 }4 ]2 Z! h                  commandId="com.plmhome.createFolder.commands.sampleCommand"
3 N3 J7 P" W  ]& U                  icon="icons/sample.gif"' M8 R. r, }, H- Z$ R3 M) s" m
                  tooltip="Say hello world"
* P" [5 z5 N: X' a0 ~                  id="com.plmhome.createFolder.toolbars.sampleCommand">9 ], W+ I8 ^( _* Q' B% \8 U
            </command>
9 M' C+ N; K% ?  f* c7 p% K          </menuContribution>' y  q# W- W2 p

3 C; X) r8 j7 x. b(6)加工具条按钮
9 E0 C  j# E' U% l4 H6 u  <menuContribution% w5 i1 l5 f- D: @
            locationURI="toolbar:navigator_Toolbar?after=additions">
" T0 u2 ~( y4 N5 o$ O- t, h! x              <toolbar9 h# _" g. O" e1 U) s& F' M% F
               id="com.plmhome.createFolder.toolbars.sampleToolbar">
' D: ~, Z$ U3 v; J- `# E            <command
/ \, i2 p7 U- I9 P2 G8 K5 ]* n                  commandId="com.plmhome.createFolder.commands.sampleCommand"1 n$ M" i% r9 n) d
                  icon="icons/sample.gif", g" {1 r7 @7 _1 [! _+ e
                  tooltip="Say hello world"  ?0 ^" P+ L+ Z
                  id="com.plmhome.createFolder.toolbars.sampleCommand">2 R+ Q  g5 y8 i& ]  |
            </command>
$ A  l) o+ f3 @# c! s  @            </toolbar>4 R) y# i( x3 s; d( u) W* x
          </menuContribution>
# X- B( T/ R+ q- O4 D, P/ ^% J$ Z- \& Q# \6 X5 b
4 U# [1 K0 s  Y1 i* q
完整的例子如下:
/ g( ]4 Y% R1 K% p; p- a% B+ u/ ?, K3 X: d) @2 ?# q0 b/ @* l1 G
<?xml version="1.0" encoding="UTF-8"?>! E( F$ y, T$ M4 R& _
<?eclipse version="3.4"?>7 J  E6 {1 g0 \. e2 B
<plUGin>
( z, t- i; T7 [& B% P
1 T+ n, m! E- G& h+ B2 n   <extension' ]! c5 H$ h* }; I
         point="org.eclipse.ui.commands">
7 z  y0 I# |0 e4 w0 N4 u- q      <category
0 }0 W: [8 `+ T; A            name="Sample Category"
! c# H5 h3 i8 m1 y3 ]            id="com.plmhome.createFolder.commands.category">
" _$ w; o- s1 c; r/ k" B: Q$ H. W      </category>4 N* F# r0 Y9 @. x4 k& i3 e
7 O# C) h: g) F8 m0 @
      <command
2 K& C: n% D. [* g6 {, U/ \; I& q6 ?            name="PLMHome CreateFolder"
$ S! }3 M) X% J( ?& G1 [* S+ H- a: ]            categoryId="com.plmhome.createFolder.commands.category"
( P; u. ~: K) U* {; E! r0 b+ M            id="com.plmhome.createFolder.commands.sampleCommand">. f" t0 d# l5 x# T5 ^/ u$ G/ c9 G
      </command>$ A9 @$ J! [9 k1 v+ D
  k/ ^. ?$ v. [3 D$ U
   </extension>  [1 I7 L" I) Y
   <extension2 Q$ w# Y1 g3 Q: B" L) e# B+ J
         point="org.eclipse.ui.handlers">
) b( e2 _5 R9 R  C- w) W) I      <handler- _: X, Z# z$ c5 \2 O7 ^
            commandId="com.plmhome.createFolder.commands.sampleCommand"0 ^' P( \2 O# f* d1 e3 l( {* b; k9 Q
            class="com.plmhome.createfolder.handlers.SampleHandler">. L0 @+ F2 G, l1 N
      </handler>  D$ Y5 h3 X) H9 P7 Y( T3 I. a
   </extension>
8 ]; f( Q# F7 L: K   <extension5 s: x1 a- t6 _8 ~& r8 }$ j2 M# P
         point="org.eclipse.ui.bindings">$ ~1 G* M0 r2 _( `+ F4 c
      <key
- W/ p$ A  }! b            commandId="com.plmhome.createFolder.commands.sampleCommand"
8 h& W0 }1 d3 g5 W, X            contextId="org.eclipse.ui.contexts.window"! t0 s( N, A) g9 E' r
            sequence="M1+6"
) V; F( S5 G4 z& p: A            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration">
: H0 j8 k$ l3 w* Y      </key>' s; [! Q; ]. \
   </extension>" r1 u, z% [( @: n
   <extension: L( p+ M) @  p
         point="org.eclipse.ui.menus">  t& m5 O  x; l
( J# M" H  `2 |! R  i6 u
           <menuContribution9 T* ?7 q  E1 m' S; y% ?- d9 D
            locationURI="menu:org.eclipse.ui.main.menu?after=additions">
0 [2 k$ g7 ~- p4 Z* y% B; a            <menu id="com.plmhome.plmhomeTool"  label="PLMHome ToolKits">1 D' p" r) b. X  _6 Y. k, ~7 x
            <command
9 c2 z$ p+ G# A                  commandId="com.plmhome.createFolder.commands.sampleCommand"4 Y+ ~& A2 v. n: v$ v$ _1 V
                  mnemonic="S"0 L& Y" k; b4 r, _) G7 A0 E1 d: z
                  id="com.plmhome.createFolder.menus.sampleCommand">
; O: L% N7 w* d" l" m& P% p            </command>
+ [0 U) V" V5 O  h# ?# t            </menu>
5 W: H7 [3 \: h  I  H      </menuContribution>: i/ M2 U/ W& @3 [# G+ A
7 g* ]: X9 u( X

  x% x+ t0 r2 c0 I+ M9 P) |
/ B- O- ]  {: y% ]       <menuContribution# {& z8 d' s9 w4 r1 f# V! S. ~% U
            locationURI="menu:tools?after=additions">
# C2 f7 m! m/ x# Y            <command, i  i% r8 X: H, a
                  commandId="com.plmhome.createFolder.commands.sampleCommand"
! Y- y) f2 S( w( e" A0 W+ N3 |" ~7 q7 T                  mnemonic="S"7 Y6 G2 l7 C' I& c
                  id="com.plmhome.createFolder.menus.sampleCommand">
# Z% R2 K1 P' C3 ~/ E" M/ B            </command># J! ^5 |1 F, ^# }% @( E, U
      </menuContribution>+ i8 N; s5 ?& q5 q
" [. F8 S: R3 L, N$ y! b
" M: r- {/ @: Z0 x1 W( [

4 J. \) s' [9 o2 W  n      <menuContribution1 z# u" M3 \* |; Z
            locationURI="popup:org.eclipse.ui.popup.any?after=additions">$ G7 f/ W: x. c- L; b4 B6 L" i
            <command3 y( G  D# I* \+ _. s; _! K; C
                  commandId="com.plmhome.createFolder.commands.sampleCommand"
" [1 }$ x) g8 n* F                  mnemonic="S"  H- H8 v! A9 W0 V
                  id="com.plmhome.createFolder.menus.sampleCommand">8 V1 S( o/ U$ C, l" p/ i; }4 c6 F* l
            </command>7 ^# S. K, @+ |8 D
      </menuContribution>9 F" ?9 Q7 m9 t( y8 l
% d& f3 n7 e  x) Z7 i& ^
      <menuContribution4 d) E+ n) h- G( Y8 \+ r& j: N0 i
            locationURI="menu:com.teamcenter.rac.ui.views.DetailsView?after=group4">( L) y) l; j: V$ q
         <menu6 m4 O& Q* i& E1 `
               label="PLMHomeToolKits"
2 Z" `1 |) @. e6 X' g               mnemonic="M", g# t1 Y' Z. L" ]( y, u) [- v1 Q
               id="com.plmhome.createFolder.menus.sampleMenu">
7 X# f/ e& p7 G- H            <command# R! p9 w5 z" p/ x
                  commandId="com.plmhome.createFolder.commands.sampleCommand"$ S: Y- L* `4 K. F* ?+ T4 `
                  mnemonic="S"
7 k, E, ?2 N" ^4 k1 {$ z% H" o                  id="com.plmhome.createFolder.menus.sampleCommand">& q8 P7 {* t' T) @
            </command># ?; E+ o, ^% `  C1 y6 ^
         </menu>
% X0 z& h0 n( z. W      </menuContribution>
, L6 s- i$ ^1 ]" G- v& `& b$ U* Z$ Y
      <menuContribution, r' j( }, d' A2 ?% r0 u! J( ]
            locationURI="toolbar:com.teamcenter.rac.ui.views.DetailsView">
, q( a/ N5 q) a, u$ |            <command2 B0 K- V( n- x/ y
                  commandId="com.plmhome.createFolder.commands.sampleCommand"
9 D: ]; x5 q' b6 S                  icon="icons/sample.gif"+ |. m, G% R* t( @
                  tooltip="Say hello world"
, p% d. N7 G1 ^* o4 P                  id="com.plmhome.createFolder.menus.sampleCommand">; Z, Z: t! J6 `: J2 J$ @% e
            </command>9 I9 Q+ t6 V4 |! E: w9 M' A& u
          </menuContribution>; S) O7 P, N* N* ]7 b8 M

1 {6 G7 R* [7 s& R2 ^4 w) S. L: X
+ f- ^) T) J: x. s      <menuContribution6 O6 n# b* G; Q- ~
            locationURI="toolbar:navigator_Toolbar?after=additions">- T8 Y0 o: k! K' M4 Q$ g
              <toolbar$ A5 a- s/ V  a+ F) ]
               id="com.plmhome.createFolder.toolbars.sampleToolbar">& T$ p$ ^) }4 \) d
            <command
. ?- ?( n9 ^1 p0 O) ^                  commandId="com.plmhome.createFolder.commands.sampleCommand"2 o, q( q+ _6 K4 B9 b, d; L
                  icon="icons/sample.gif"
* _) Y+ t* W" v: |' m7 V                  tooltip="Say hello world"  Z( F( _, g$ R; \7 y1 P& A
                  id="com.plmhome.createFolder.toolbars.sampleCommand">* n$ W; @4 W: I" K+ b! |
            </command>
: R: ^  D) d! _5 M# C8 {& O            </toolbar>% @, d. H$ g0 a! p
          </menuContribution>* w0 \4 v  T+ l$ Z2 V8 i3 N. \. G5 h: N
+ r( Q- @- d# A$ [! Y' W' @
! C/ C0 }' p$ _: n
   </extension>
  T6 X9 @) W& ?7 I: r8 `9 m, I& M' u
</plugin>
4 \. b9 R- o/ y5 Z4 u* O4 q/ f
  v1 W; s; ^  p# H: [: g/ Q0 M% J1 i" ~  G: t

/ j$ l& y: _5 y: p/ m/ k
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了