查看: 8602|回复: 5

[原创] UG NX 二次开发中菜单定义的高级用法:选择性的激活功能

  [复制链接]

4

主题

3

回帖

46

积分

管理员

积分
46
发表于 2014-1-20 14:52:37 | 显示全部楼层 |阅读模式

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

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

×
UG NX 二次开发中菜单定义的高级用法:选择性的激活功能
; ?& A2 O3 M& |% u) \6 r 1 \' t& g. \2 J+ S: ~* e
问题:
/ S5 P4 {) R, U: o/ H" U
. V. h8 l/ ]/ P8 q! v3 p3 |% {" b! q当我们进行UG NX 二次开发脚本的书写时候,按照直接的方法,将.men,.tbr格式的文件放在startup目录下面,结构是所有的功能都会在任何模块下显示出来,包括没有部件的情况下!
. i; N/ H5 Z$ E) i/ ?/ M; W3 ]当点击这个功能的时候,会告诉用户,“你需要在工作部件上操作”。显然这种workaround 的方法并不是很好,如何才能不高亮,不激活这些不再对于的模块下的功能呢?
; W  Z! F" f0 J7 B以下是我的点技巧,分享个大家:
3 l. z& F; j! K. ~8 S3 {* v

不友好的显示

不友好的显示

5 o0 R' D" I2 l6 }6 |( J1. 只要文件放在startup目录下,当你启动NX的时候,就会自动加载,所以当你的菜单文件放在startup下面就会加载相应的功能。如果不想让这些功能激活,就得想办法将其放在Application下面。如何实现呢?, h, u) y  L, ~0 w
(1)在Startup目录下建立plmhome.men文件,这个文件的写法如下:" _. o1 T( Y0 F9 B7 u
  1. VERSION 120
    % z& @7 G$ q, `: O( V4 ^1 x
  2. EDIT UG_GATEWAY_MAIN_MENUBAR
    ; ?9 `! f) J) Z. s
  3. * |' [2 f+ k5 `6 u: A/ n
  4. MODIFY
    & ^9 f5 B' A6 y& }# y+ \, O; r9 M
  5. APPLICATION_BUTTON UG_APP_GATEWAY
    3 }1 R( M3 {* h1 `' ~
  6. MENU_FILES nx_plmhome_package_gateway.men/ n6 U, [9 R' X, \
  7. END_OF_MODIFY1 V8 P* E! Q: H2 w1 a, e

  8. 2 E" i9 ^& S, w4 @
  9. MODIFY$ I6 e  m4 q/ }! N) p
  10. APPLICATION_BUTTON UG_APP_MODELING
    + _) W7 I$ D$ T9 n! ?
  11. MENU_FILES nx_plmhome_package_modeling.men
    7 k6 S: `/ ~6 }2 Z* @8 Y
  12. END_OF_MODIFY* z; O* I; V4 R& g' J) G

  13. + {! d' _  I5 z0 f" f

  14. . e7 |7 Z, S  H& N
  15. MODIFY
      }3 A3 _  R7 i- U
  16. APPLICATION_BUTTON UG_APP_DRAFTING
    4 _! z' z! y- |4 M
  17. MENU_FILES nx_plmhome_package_drafting.men
    & z# ^2 s, B5 K6 Q6 B7 [
  18. END_OF_MODIFY. P. U8 i' d% J$ o4 Q( [

  19. ( c( X0 g3 |% Z) z% _$ |2 ]
  20. MODIFY6 _& t4 [! {6 q3 `
  21. APPLICATION_BUTTON UG_APP_MANUFACTURING0 `& r+ B+ E+ M7 A0 x+ t
  22. MENU_FILES nx_plmhome_package_cam.men- Y: _2 S9 J  [" L  @5 h) ?
  23. END_OF_MODIFY6 g: ~& @- N6 I* I" |5 H* C# S

  24. 2 B9 ?% i3 n8 u
复制代码
注意这里是通过MENU_FILES来调用菜单文件,而调用的这些菜单文件分别是不同环境入口下面分别调用的。入口包括UG_APP_GATEWAY,UG_APP_MODELING, UG_APP_DRAFTING,UG_APP_MANUFACTURING分别对一个入口,建模,制图,加工环境。在每个环境下有自定义的菜单文件。7 \$ w' A; ?+ C) B# L& I/ m
(2)在Application目录下建立以上的菜单文件& P& [) m, L( X* S4 k) s
nx_plmhome_package_gateway.men
! e( \  W1 O1 v- Knx_plmhome_package_modeling.men" F1 C) i  n- @, ~& y0 {; j
nx_plmhome_package_drafting.men
4 N, j: i! j; g( r) N( xnx_plmhome_package_cam.men
. \% q% ~6 k: }! ?
5 S" g, G2 n+ V  ~这些文件的书写就是添加基本的命令,比如建模的写法如下:- H2 h  X# J) V% F, _5 T
  1. !
    - X  X1 P" e+ x9 d
  2. !
    ' b, u+ J8 t9 t% Q  n# L. t
  3. !
    ; ?+ R5 q. i7 k! J( V4 K3 m% C1 T
  4. VERSION 120
    ( O; U* r6 }# M7 r& A' V( C
  5. EDIT UG_GATEWAY_MAIN_MENUBAR
    + @& c0 [$ R) R' Y& p$ ?* q. [

  6. " H$ s2 b! p: M- E% A9 V0 K0 v* @, p# e" M
  7. AFTER UG_WINDOW
    # y) J# w1 y' @# _( C  Y! t5 y

  8. ; c& s1 k4 r; D8 z4 f3 h! c
  9.     CASCADE_BUTTON PLMHOME_Modeling_BTN$ _) X- o7 W) J1 R1 Z
  10.     LABEL Plmhome Toolkits5 e5 P: N6 j3 e, v, q0 \

  11. ( {3 u; ]( n! `( S8 s7 X
  12. END_OF_AFTER
    & p/ E+ j- O. e& U; h: p
  13. 8 S: a7 Q' e, R9 K- H5 p4 M
  14. MENU PLMHOME_Modeling_BTN  [/ b* W0 e1 Q" V) p% _  r, m8 b

  15. $ e) {, {6 b) `0 V* L, a
  16.     BUTTON check_modeling
    + I0 z+ h5 t# y; g
  17.     LABEL Modeling Tools3 L7 R" E- O# n
  18.     BITMAP Modeling
    6 u' |) A* d. a
  19.     ACTIONS Modelingtools
    . e, ]; s. x) o4 g& l
  20. 5 g6 C* t9 l, A7 ]! O7 D
  21.     BUTTON Modeling1
    0 g& ~6 B+ L: D' S" h( N: j6 ]8 D
  22.     LABEL Modeling Tools1
    0 V6 F* q  }7 [+ Y) F
  23.     BITMAP curve# E% G7 E' \: V8 S
  24.     ACTIONS Modelingtools1
    0 s/ A9 E' g5 q1 z* `9 w

  25. " m" ~4 s  H6 H/ g6 ~% l7 b) X
  26.     BUTTON GW% }7 a& v9 a, I# @: q2 H8 F
  27.     LABEL GW Tools1
    ; j* Q: z! ^2 B6 d
  28.     BITMAP block
    2 ?0 D2 D% k/ F
  29.     ACTIONS GW' k; I8 k" v% U# q$ ?- p1 J
  30.     ; y! L: n# ~8 ?
  31. END_OF_MENU
    ( c, O$ V8 [: B6 G$ C
复制代码
2. 关于工具条文件的书写
( C2 W2 m1 E5 O. j3 O: q工具条文件tbr的书写方法没有任何变化,工具条的功能都是来自菜单文件.men里面关联的功能,书写完毕后直接放置在startup目录下即可!5 Q( V% p. O# c1 P( U  c% H' C
  1. !
    , q7 E. B: y/ A' n' g& D( C
  2. ! + h& u. W8 r) r
  3. !  `: c; w6 V# b% }- v' t
  4. TITLE  PLMHome Tool - PLMhome Toolkits 0 l. m7 O8 x  q# b1 p9 w9 I9 L
  5. VERSION 1701 _9 t- o( X& h" A2 n* C4 c+ M
  6. DOCK TOP3 g! B. x& @% f) P! c

  7. " ]9 [" `+ t# n2 R; Y
  8.     BUTTON check_modeling% a- ]  \. Y( Z) x  S7 U# X
  9.     LABEL check_modelingSetup
    * w/ l- F0 k1 ?$ J
  10.     BITMAP check
      v. f- b0 v/ X) X. b5 K. T0 M
  11.    
    % J1 ?& s9 L! h6 Y& e( k
  12.     BUTTON CAM
    ( c3 s# t8 y5 A- g1 j! K5 c# n
  13.     LABEL CAM Tools; k' }0 x( Y( l2 `
  14.     BITMAP cam
    # z/ }. a: r+ A2 ^
  15.    " I1 E0 h. z: y3 S& ?
  16.    
    & D% d0 {! h# \' T
  17.     BUTTON GW
    2 s  j3 h3 b; e" e- ~
  18.     LABEL GW Tools14 q  O# Y( f( h( K( j, j
  19.     BITMAP block" B( [% J, `2 y) j
  20.    
    8 w* t9 e( h* B1 j- F6 @( W
  21.     BUTTON DRFTING1 A; ^0 Z+ r; L' \0 d' l
  22.     LABEL DRFTING Tools
    . Z$ i1 v, a8 ^3 x4 W
  23.     BITMAP drawing- f6 a; A' o5 W6 ~. J
  24. + Y$ l; E  S1 J5 g
  25.    
    3 g( B+ E1 I- s1 k- @* x5 \+ u( H
  26.    
复制代码
3. 这样当启动NX的时候,就会发现:/ [7 @# |1 b7 s% ~9 e2 K
(1)没有打开部件的情况下,没有任何菜单的添加,即使打开工具条,也发现是灰色的,不能使用!
9 E4 }8 a# @# p1 W/ ?: R. d! t( h( S7 d% `7 _; \9 Z7 V! \

no part

no part

. k1 Q6 X6 }$ x& E; g(2)进入建模模块,可以看到只有建模相关的功能显示并激活(当然此处可以干掉那些灰色的功能,不要添加即可,此处只是举例)
8 ~* G/ m# X$ {; f

Modeling

Modeling
, z7 s* X) P; ?5 m( o0 C% P$ E! S
(3)制图模块也是一样
' n0 @( @8 y6 w% \$ A0 O/ U' U3 A( |

drafting

drafting

/ `6 s7 l% x# h" ?(4)加工模块类似
! x: M4 Z! D5 b" E% D" V% x

CAM

CAM

1 }: V8 T  V4 F: d' ?( |2 Z2 c6 Z0 p
/ m3 f7 G. Y  W/ I( y& [% r4. 其他的模块和功能,举一反三即可搞定!% r4 b0 ^. c5 [$ D& C! B
* a0 Z" \( R1 J" A) M5 i0 D
6 B' x3 f4 U" b: K

  ~- @- `0 h& ~! C0 M" n4 r6 u. o5 y
! {" J  c' m$ k  o
0 t  ^% Y# Z5 {  Z7 J
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复

使用道具 举报

4

主题

3

回帖

46

积分

管理员

积分
46
 楼主| 发表于 2014-1-21 09:20:44 | 显示全部楼层
竟然没人顶
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

7

主题

45

回帖

186

积分

注册会员

积分
186
发表于 2014-3-2 18:34:15 | 显示全部楼层
真厉害      
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

3

主题

51

回帖

278

积分

中级会员

积分
278
发表于 2014-3-3 13:45:53 | 显示全部楼层
确实十分有用,顶一个
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

0

主题

58

回帖

420

积分

中级会员

积分
420
发表于 2016-6-7 22:54:22 | 显示全部楼层
顶顶顶顶顶顶顶顶顶顶顶顶
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

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

本版积分规则

在本版发帖
关注公众号
QQ客服返回顶部