PLM之家精品课程培训

PLM之家精品课程培训

联系电话:18301858168   |   QQ咨询:939801026
NX二次开发培训

NX二次开发培训

UFUN/NXOpen C++和实战案例

适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术。
公众号二维码

关注公众号

点击扫描二维码免费在线高清教程

课程详情
Catia二次开发培训

Catia二次开发培训

市场需求大,掌握核心技术前景广阔

Catia二次开发的市场需求大,人才稀缺。掌握开发技能潜力巨大,随着经验积累将在汽车、航空等领域有所作为。
B站二维码

在线原创B站视频

点击关注工业软件传道士主页

课程详情
Teamcenter培训

Teamcenter培训

全方位培训,从基础应用到高级开发全覆盖

涵盖用户应用基础培训、管理员基础培训、管理员高级培训及二次开发培训等全方位内容,由多年经验讲师打造。
QQ群二维码

加入同行交流

点击扫描二维码加入QQ群

课程详情
×

PLM之家plmhome公众号

课程涵盖: PLM之家所有原创视频

×

关注B站视频

所有高清视频一览无余,全部在线播放学习

×

加入PLM之家QQ群

同行交流,疑问解答,更多互助

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

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

[复制链接]

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

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

admin 楼主

2014-2-12 19:10:15

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

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

x
  1. <p><div class="blockcode"><blockquote>
    1 O8 C, h7 F! H, x' {) o

  2. $ c, O, O% ~5 p
  3.   m, ]1 A/ x( e* D! `
  4. enum MenuID9 Q! a* t2 O, ~" X7 R) }
  5. {# o4 U1 Z: n0 V! x- P
  6. RemovetopNode = 0,' b, Z( m$ G' e- v
  7. DeleteNode,
    , n# |+ F) X  K/ A! Z6 U
  8. CheckedMenuItem,
    ' n4 J! F8 L5 T& K9 e
  9. DefaultMenuItem,$ _7 {" ^- k( J* ^5 q
  10. DialogLaunchMenuItem,6 T5 Y& Y. \/ B
  11. DisableMenuItem,0 e7 D& i  P$ B! D
  12. HiddenMenuItem,
    1 C! S: |7 \: U+ O5 {3 k
  13. IconMenuItem,
    7 C; R6 t, @8 Q

  14. . m& [. S+ j9 g3 x7 s6 ^
  15. SubMenuItem1,: J+ a2 j. p$ o2 C
  16. SubMenuItem2,
    % b- l# k9 d( ^7 w! `* W6 N
  17. SubMenuItem3,
    . Q. j( f9 @% l; B  O& [
  18. SubMenuItem4,
    2 o# c' |7 ?& q, V" O  A

  19. " [$ @1 D" n) I6 |3 V+ g9 l
  20.         historymenu,# _8 n! Z# D5 |8 }& U" H6 H' I
  21.         nohistorymenu,
    ( P$ e! o6 l% v) T* b' `

  22. ; v: x" D8 R' M, ]8 ~# N
  23.         modelhistoryfilter,
    % b2 T" o8 O2 b: Q
  24.         filterSubMenuItem1,0 n5 d1 O. I% o8 H. }
  25.         filterSubMenuItem2,0 P  u# ^" O: O6 W5 @

  26. * h# C" q8 h# l0 G1 ]* l  j5 R9 h

  27. 2 a+ }5 Q) L9 G& g8 P0 `
  28. };
    ; W/ {$ [( z+ ?! F( H3 Y: |
  29. void tree::OnMenuCallback(NXOpen::BlockStyler::Tree *tree, NXOpen::BlockStyler::Node *node, int columnID )
    * G& R& G' Z/ E: Y0 d
  30. {
    9 J: y  J. A! {+ ~# q8 k" _! V
  31.         TreeListMenu *menu= tree->CreateMenu();
    9 {7 m% |* c3 {2 X9 L% ^8 m( z
  32.         TreeListMenu *submenu = tree->CreateMenu();
    & |! v. i. Q- {. F5 }# w2 N
  33.         if(node==NULL)
    ; I9 A( z7 E' k2 _7 z3 v) t
  34.         {
    # j6 f: p. k& `. o
  35.         menu->AddMenuItem(RemovetopNode,"Remove Top Node","delete");3 w' J# s7 p1 I+ f$ j
  36.         menu->AddMenuItem(CheckedMenuItem,"Checked Menu Item");
    1 Z7 q; ~$ R  N1 a4 x
  37.         menu->AddMenuItem(DefaultMenuItem,"Default Menu Item");
    $ d2 D" J& \8 J* v3 x3 m
  38.         menu->AddSeperator();
    . V& j' D, L& }9 ]' }/ e
  39.         menu->AddMenuItem(DialogLaunchMenuItem,"DialogLaunchMenuItem");
    . y: ^% _4 b$ l2 e
  40.         menu->AddMenuItem(DisableMenuItem,"DisableMenuItem");
    ( I% j6 E& J* ]+ p
  41.         menu->AddMenuItem(HiddenMenuItem,"HiddenMenuItem");4 p- f3 T5 @- e
  42.         menu->AddMenuItem(IconMenuItem,"IconMenuItem");
    2 r( |& A/ \" e3 G

  43. . e! L5 y, l# K. _- p, y0 t  j
  44.         menu->SetItemDefault(DefaultMenuItem,true);) j- H, y! _! y% S9 Q# q* X
  45.         menu->SetItemChecked(CheckedMenuItem,true);" l$ N: A' A7 ?& C1 x( _
  46.         menu->SetItemDialogLaunching(DialogLaunchMenuItem,true);3 Q% E% ?2 n) Y- g' X( J  M. t
  47.         menu->SetItemDisable(DisableMenuItem,true);
    % `- Z: @. B% Y- I4 e/ u. V
  48.         menu->SetItemHidden(HiddenMenuItem,true);
    6 h8 N' d: u- w5 T
  49.         menu->SetItemIcon(IconMenuItem,"skeTCh");
    ) K3 L2 b: H" N) p
  50.         menu->SetItemText(RemovetopNode,"Remove Top Nodes");
    # |% s  }% j- l  ?9 B7 ]# X
  51. " \7 k) H: h& c7 u' N4 ^
  52.         // submenu$ i+ ?6 q9 m8 H# V9 n1 V
  53.         submenu->AddMenuItem( SubMenuItem1,"Model Views");
    / h( M" X. [0 v4 B* r2 n) M
  54.         submenu->AddMenuItem( SubMenuItem2,"Cameras");
    & G9 x' Y* P7 l1 ^
  55.         submenu->AddMenuItem( SubMenuItem3,"Model History");
    & s9 r+ B" o7 {' \/ T3 Y8 u5 |9 c4 r5 L; T
  56.         submenu->AddMenuItem( SubMenuItem4,"History Model");
    7 \% l  ]" s7 L+ ~2 {" c
  57. ( O+ x# [4 Q# i# D1 T
  58.         menu->SetSubMenu(RemovetopNode,submenu);
    $ m* m, p- \- d% @
  59. 0 E1 }0 y" l* g* q) E
  60.         }
    * {4 Q  K2 p6 f8 _' z1 u* @7 J
  61. else
    : {$ ]( j3 v* v7 @
  62.         {9 Q6 o- }- f; Y6 ~+ l3 ~$ E1 e
  63.         if(node==modelhistoryNode)( \! c9 w  `1 c& r1 B

  64. * k# _3 l2 C/ W. h
  65.         {. a0 c# \/ A/ L  T  _) E+ h: d8 j
  66.         menu->AddMenuItem(modelhistoryfilter,"Filter");
    ! w; C1 w0 m; ?: h, g) s. F
  67.         // submenu9 S' v, B2 Y( c5 Z" ^  o6 J
  68.         submenu->AddMenuItem( filterSubMenuItem1,"Remove Item");  T8 `, D3 e, t. U6 s
  69.         submenu->AddMenuItem( filterSubMenuItem2,"Remove All But Item");7 d/ U  F9 x. V) s# r0 J( W
  70.         menu->SetSubMenu(modelhistoryfilter,submenu);
    % [5 P5 j  y  l, l" ]
  71.         }/ p2 o% n9 B5 V: ]5 N
  72.         else if (node==historyModeNode)
    3 C+ Q9 J  }! L. i6 z) }) b
  73.         {5 S3 R0 y7 ^3 y8 F& p3 v
  74.         menu->AddMenuItem(historymenu,"History Mode");; W/ r/ v' f4 b+ K) X9 X
  75.         menu->AddMenuItem(nohistorymenu,"History-Free Mode");0 M3 P0 f# F* K0 ^7 f
  76.         menu->SetItemIcon(historymenu,"check");
    / A! s" I+ q' S9 E% O8 F
  77. }
    + H# s" a& }& i/ F* C4 l+ e
  78. 5 U( }, E: T1 H  }3 j" Y
  79.         }
    ' ?' h7 U, O; O; D
  80. " m  p# k. O8 S+ G
  81.         tree_control0->SetMenu(menu);8 n( ?: g. H3 u- k4 }. k$ k* K$ }. D
  82. " \1 [: ?. ~8 Z& j% ]- L  [$ d
  83.         delete menu;- y% U- W, ^) A% o  O( G
  84.         delete submenu;0 k* v' D8 F7 S
  85. }
    3 R) H1 h7 D/ ~) P6 ?
复制代码

# ]% t& x9 D. v8 c% X2 e' _0 {
% W/ L& y2 I; s5 b+ J1 e- k/ |0 {% k( O3 h. K1 T1 f/ b
NX二次开发treelist控件添加右键快捷菜单回调函数的简单例子* |! I( P( x; Q! F2 t, \

, Y( O6 Z$ m* p+ c这里大概的模拟了下 部件导航器的功能!
5 A* d7 a# j( f' o0 m  C8 ]' B9 D5 {- l, I9 k3 N9 o
1 \, P9 Y& T5 c* v9 F

NX二次开发treelist控件

NX二次开发treelist控件
/ ~3 Y' I( r2 C

( x0 F) d/ N. `/ |5 a3 q% R7 c

NX二次开发treelist控件

NX二次开发treelist控件

: t8 V. t5 h. \; `
# o$ K; U. G8 O. {7 p

NX二次开发treelist控件

NX二次开发treelist控件

& t! ^6 T$ N% n) y
$ V0 [5 X5 b$ l/ y# T* h) k( G7 ~4 D" [7 Y
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了