PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

PLM之家PLMHome-国产软件践行者

[二次开发源码] NX二次开发treelist控件添加右键快捷菜单回调函数的简单例子

[复制链接]

2014-2-12 19:10:15 5354 0

admin 发表于 2014-2-12 19:10:15 |阅读模式

admin 楼主

2014-2-12 19:10:15

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

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

x
  1. <p><div class="blockcode"><blockquote>0 B* Z* `, b, g) m# Z
  2. 9 b! D2 {, v4 M4 m8 p# \$ G+ n
  3.   s6 h% P3 d2 d( p8 I  b
  4. enum MenuID
    , O# ?0 U6 T1 Y* A) Z9 c6 q- T" ~
  5. {
    + V7 `' I8 C3 x' n1 V, m3 E
  6. RemovetopNode = 0,' E; x& N- H( I4 Y) O- w- ^
  7. DeleteNode,6 {( m1 [) o, V. M# {) O" a
  8. CheckedMenuItem,3 P( N  ~4 N* ?. S3 G) ~5 P: i! R
  9. DefaultMenuItem,2 ]/ |" ]( B5 w" G7 T
  10. DialogLaunchMenuItem,
    9 C2 c! h, e; ]
  11. DisableMenuItem,
    % x+ T7 f' x) `1 J
  12. HiddenMenuItem,
    # r2 ?" a( \+ G
  13. IconMenuItem,8 @. O% l) i+ s0 j7 ]- A5 a
  14. 8 o4 H  n9 Q( c6 r: k
  15. SubMenuItem1,, ~; w3 n) j4 w6 Z% Q
  16. SubMenuItem2,
    " Y4 P5 I: J! b, P$ F
  17. SubMenuItem3,
    * U3 c- `3 }4 O5 \8 d" ^
  18. SubMenuItem4,
    8 q) w3 N; ?& Q' e: b8 K" r) {# B
  19. ; t' L5 S! j5 a! I0 t, t# l  _
  20.         historymenu,
    ( D- m, O! J" v% C6 ^6 Q
  21.         nohistorymenu,
    0 ]6 T+ y7 [& c* ~9 F* t! y

  22. 3 u% D. z4 G: b2 T5 I/ g, G# ?
  23.         modelhistoryfilter,
    3 ]! }, H2 j" n$ z  n
  24.         filterSubMenuItem1,! V5 M: H4 N$ X2 t% x0 f/ h$ v
  25.         filterSubMenuItem2,, Q3 G7 F9 n; u& Q+ f
  26. 1 q  D; c' y, N/ w& O2 c

  27. 3 @, S* f0 m0 s" @
  28. };
    / i: s2 l  r% B5 [" L9 O. m
  29. void tree::OnMenuCallback(NXOpen::BlockStyler::Tree *tree, NXOpen::BlockStyler::Node *node, int columnID )
    : ~9 R" B+ x3 z4 m9 ^( }3 l2 z; u+ Q
  30. {
    , H5 Z. q' I* j: R, n/ `
  31.         TreeListMenu *menu= tree->CreateMenu();
    ! e2 M  n: E  e" Q5 x# C9 h
  32.         TreeListMenu *submenu = tree->CreateMenu();7 ^3 h' s4 I: F# t
  33.         if(node==NULL)
    / D( X* o! n6 [! o$ I  b$ d( O
  34.         {5 |' T4 A4 ^( A5 ^. _: H. l+ W
  35.         menu->AddMenuItem(RemovetopNode,"Remove Top Node","delete");
    : Z, X) s4 F4 _( [2 A
  36.         menu->AddMenuItem(CheckedMenuItem,"Checked Menu Item");
    ( D$ `5 m- e5 j- D8 m
  37.         menu->AddMenuItem(DefaultMenuItem,"Default Menu Item");
    # j# K0 i8 D8 Z2 d
  38.         menu->AddSeperator();
    ' t" b+ _! s, g; n* J
  39.         menu->AddMenuItem(DialogLaunchMenuItem,"DialogLaunchMenuItem");, Y* h1 Z% Y5 r3 b1 W8 H
  40.         menu->AddMenuItem(DisableMenuItem,"DisableMenuItem");8 h2 A2 Z) x8 }) v3 F; Q! g9 I7 U
  41.         menu->AddMenuItem(HiddenMenuItem,"HiddenMenuItem");
    ) L, t* e, i1 a- @
  42.         menu->AddMenuItem(IconMenuItem,"IconMenuItem");
    3 I- r) o, \, _; e* L* t: M
  43. , ~3 C7 C% N8 J7 h# M( h
  44.         menu->SetItemDefault(DefaultMenuItem,true);
    5 e: Q& H; z  T
  45.         menu->SetItemChecked(CheckedMenuItem,true);' E+ e7 R, g' `/ {$ e
  46.         menu->SetItemDialogLaunching(DialogLaunchMenuItem,true);& q. ?8 e+ T( a0 \7 X& i; l* K
  47.         menu->SetItemDisable(DisableMenuItem,true);
    ' T- s6 h% G$ m8 V, u' C* d& S* c" X
  48.         menu->SetItemHidden(HiddenMenuItem,true);+ I/ P% u& I: H+ B' V/ {
  49.         menu->SetItemIcon(IconMenuItem,"skeTCh");
    & i% _5 v' B/ Q1 ~- `5 H
  50.         menu->SetItemText(RemovetopNode,"Remove Top Nodes");. M+ b+ }, V# G  e; V9 P

  51. 6 H. v; S( r! M. I; i
  52.         // submenu+ c/ |! c8 {$ Q1 a% I, t. a
  53.         submenu->AddMenuItem( SubMenuItem1,"Model Views");
    / z( Z1 ~. \. M. E* J
  54.         submenu->AddMenuItem( SubMenuItem2,"Cameras");9 E' g) `" B$ w, S1 F0 T
  55.         submenu->AddMenuItem( SubMenuItem3,"Model History");
    / `& _( H* D) x3 {
  56.         submenu->AddMenuItem( SubMenuItem4,"History Model");
    : \' v$ [: ]5 G% y0 A% N
  57. 8 _% C. B5 ]8 }+ j
  58.         menu->SetSubMenu(RemovetopNode,submenu);0 |  L0 N$ F4 q/ @  z
  59. " U( h7 @% p5 K7 d: P* p/ ~* p
  60.         }
    $ l$ c) o: {0 Z/ ~
  61. else
    2 `* W6 S& G, [6 g+ i
  62.         {$ {, Y  r+ e6 v0 d5 N  \
  63.         if(node==modelhistoryNode)
    & h5 N' F; a, b+ K0 l+ T- ~
  64. ) D" S7 x7 [! G, K4 b% U
  65.         {3 R, R6 \+ o4 R
  66.         menu->AddMenuItem(modelhistoryfilter,"Filter");
    ! ]( z( H8 S0 w# o
  67.         // submenu
    9 e' x1 F9 N# ?" x, |0 l
  68.         submenu->AddMenuItem( filterSubMenuItem1,"Remove Item");+ }4 _9 [. D# Q; n& F7 v2 X9 m
  69.         submenu->AddMenuItem( filterSubMenuItem2,"Remove All But Item");! W+ ^4 y% I' L9 s. ~$ l* |
  70.         menu->SetSubMenu(modelhistoryfilter,submenu);
    7 D" n+ ?3 y' p* I. C( k' y
  71.         }
    5 @  R# P, W; a+ K- O3 Q
  72.         else if (node==historyModeNode)8 h( D  q3 {4 \% Q3 x! e7 Q
  73.         {
    : c9 c( U8 _$ y. a" X) H
  74.         menu->AddMenuItem(historymenu,"History Mode");
    0 ^+ z2 z  s/ s" M
  75.         menu->AddMenuItem(nohistorymenu,"History-Free Mode");0 T5 j( B) t: [; y
  76.         menu->SetItemIcon(historymenu,"check");
    / l3 M1 l& ?. ?' U
  77. }
    ! T6 }; p- Y) N$ r' B: U

  78. 1 m4 u- ~) H2 M1 f8 [
  79.         }( M* Y8 D' P* S7 Z- X

  80. , M4 V# s: ~7 Z
  81.         tree_control0->SetMenu(menu);4 U0 `; V3 Q2 b) m9 W5 k/ m) ^

  82. * Q4 o1 u7 P  j# T0 L5 K* B
  83.         delete menu;
    ' k, {2 w+ X+ {
  84.         delete submenu;4 g9 L. D/ M3 b, @
  85. }
    8 u8 u6 S( Y6 o9 E& j1 t0 z: O
复制代码
, W6 D& A7 M2 b# j- _
1 k7 I: I. w% i2 F/ ]2 ^
2 b; I. L& W& @# D) h2 d- |
NX二次开发treelist控件添加右键快捷菜单回调函数的简单例子& }; p# e9 d' }) G+ |. e& A( X
2 K7 u7 s3 a& C! s
这里大概的模拟了下 部件导航器的功能!
+ A4 I( r7 R1 C5 Z( ]
! }$ O% N$ |$ @- h* a9 i- x( ?- V5 N$ g* l* c( Q$ o

NX二次开发treelist控件

NX二次开发treelist控件
1 e# Q/ n' A2 g7 K
7 O/ n7 D5 K- `( X. v

NX二次开发treelist控件

NX二次开发treelist控件
# V- f& S- t; _* t$ Z% P

4 X2 x, Y+ P# _: _

NX二次开发treelist控件

NX二次开发treelist控件
9 E3 J& S' Z0 P- w8 _

# V* p7 M7 [7 H; w, E, W1 H/ D# i' h. K6 h. C
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了