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 5345 0

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

admin 楼主

2014-2-12 19:10:15

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

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

x
  1. <p><div class="blockcode"><blockquote>
    5 W3 W0 i  T" {
  2. 6 g. f8 s5 Z& ]$ ~, u! u
  3. " x9 |1 R3 q& V  |
  4. enum MenuID/ E. C4 Y) P7 Z* ~3 \- K
  5. {
    $ b& F2 C- h" H9 m2 ?4 d$ {
  6. RemovetopNode = 0,+ J$ r/ v" m; f* {$ ]- `, B0 W
  7. DeleteNode,
    * f; k, U+ v& K4 p
  8. CheckedMenuItem,
    + \' ?8 D( i" w. P
  9. DefaultMenuItem,
    2 N( E; x8 G# l# `
  10. DialogLaunchMenuItem,
    0 I7 T+ k" j' S2 I' C
  11. DisableMenuItem,) \9 o' x8 j5 e
  12. HiddenMenuItem,) i8 E$ p! b  D
  13. IconMenuItem,% h# u7 S$ }* ~: ?7 D% \

  14. ' s: i1 U1 V, K1 U3 X9 C
  15. SubMenuItem1,
    8 R) Q3 F3 U+ o) O- @+ m0 N
  16. SubMenuItem2,
    3 v1 R! M. m7 A4 r
  17. SubMenuItem3,) O3 L8 I; R  T* ]' D
  18. SubMenuItem4,  `' X1 f% Z5 y" B. |9 }1 J

  19. / V0 e: Z: N# }- s
  20.         historymenu,
    9 o9 Z' p( o; Z, l' M+ _/ Z# V
  21.         nohistorymenu,
    ; J! \+ Z. i: Y: p7 o$ w
  22. 3 y# J% z5 p1 G. w/ z: _
  23.         modelhistoryfilter,* X+ ~8 B8 [, r( e( G
  24.         filterSubMenuItem1,
    % o% I( B; C- T4 C% h! K6 t2 h
  25.         filterSubMenuItem2,$ Z* {6 l3 I) R4 `  x! t1 H
  26. * `4 S! U3 L( n1 h
  27. - H0 a! ]0 u% j: l, h
  28. };' F: w. c* S+ C$ O
  29. void tree::OnMenuCallback(NXOpen::BlockStyler::Tree *tree, NXOpen::BlockStyler::Node *node, int columnID )
    7 W) A6 p5 ~7 R" D1 I$ b2 H& c
  30. {
    2 R2 l" a; a9 {$ K$ K( S
  31.         TreeListMenu *menu= tree->CreateMenu();
      M: G1 x% C* ?6 k6 f
  32.         TreeListMenu *submenu = tree->CreateMenu();  E  i/ ]- y$ l6 m: U! s7 ]5 U
  33.         if(node==NULL)- ?; ^% K8 {! v0 m' A2 ~8 o) {
  34.         {; t+ H, |- X$ l5 D  M4 D0 S
  35.         menu->AddMenuItem(RemovetopNode,"Remove Top Node","delete");
    4 o' `  B3 a' c& u0 z2 x/ z7 _1 L. O+ C4 V
  36.         menu->AddMenuItem(CheckedMenuItem,"Checked Menu Item");. T* B4 G% U5 L
  37.         menu->AddMenuItem(DefaultMenuItem,"Default Menu Item");
    $ U' d$ C3 @! i
  38.         menu->AddSeperator();0 X2 W+ Q5 N7 A  r/ [
  39.         menu->AddMenuItem(DialogLaunchMenuItem,"DialogLaunchMenuItem");
    4 E8 D4 h% o$ [3 W
  40.         menu->AddMenuItem(DisableMenuItem,"DisableMenuItem");
    4 x, O! i$ M# q
  41.         menu->AddMenuItem(HiddenMenuItem,"HiddenMenuItem");4 \5 C! A$ J! }* Q/ G
  42.         menu->AddMenuItem(IconMenuItem,"IconMenuItem");
    & v8 E% S. ]7 S% V5 ^
  43. 2 }1 `. c8 z" [
  44.         menu->SetItemDefault(DefaultMenuItem,true);
      Q8 K  |0 W% ]4 e
  45.         menu->SetItemChecked(CheckedMenuItem,true);
    8 N) g/ I4 K; E: o6 l' O6 |( u
  46.         menu->SetItemDialogLaunching(DialogLaunchMenuItem,true);. }' y9 J; {2 Z, ^
  47.         menu->SetItemDisable(DisableMenuItem,true);: j& G3 ^5 ~; [5 Z
  48.         menu->SetItemHidden(HiddenMenuItem,true);
    2 d- c0 v+ G8 w8 U9 I$ B
  49.         menu->SetItemIcon(IconMenuItem,"skeTCh");
    : ~; `, N* M% Y. D. p
  50.         menu->SetItemText(RemovetopNode,"Remove Top Nodes");+ w+ o. j- `/ }$ X) s; `# S  Z

  51. $ B! |7 n1 \) b3 M* _
  52.         // submenu4 |6 C& e5 _' E& F" O+ J6 ~: p
  53.         submenu->AddMenuItem( SubMenuItem1,"Model Views");
    + L6 [3 h' Y  I" J% J
  54.         submenu->AddMenuItem( SubMenuItem2,"Cameras");
    + A. B7 u% O/ [/ \4 X, U) v" @6 c
  55.         submenu->AddMenuItem( SubMenuItem3,"Model History");" q% x* d; ^- L  u( s" f  x  z) @
  56.         submenu->AddMenuItem( SubMenuItem4,"History Model");" N5 q7 B: B3 W' G* e

  57. . L& T, a# z, T& U) a3 Z1 m
  58.         menu->SetSubMenu(RemovetopNode,submenu);- N/ f, I# {0 s4 O% U& X: N

  59. 0 E9 e& g& P( Q6 u+ n5 s/ V) b  R
  60.         }
    ; R2 m6 R( n4 t' l7 C
  61. else' O! m2 L, i7 S
  62.         {
    ' G( V2 u2 a; Y) Q' n, M5 `
  63.         if(node==modelhistoryNode)* z0 B2 i+ O3 T. R! J

  64. ( d! Y+ s3 D( Z, C; ^- G. Q
  65.         {5 z) L3 b. v9 U: c
  66.         menu->AddMenuItem(modelhistoryfilter,"Filter");' M" ?8 P: [; |+ ?- B
  67.         // submenu% r+ h% U) b6 u! d5 V. ^
  68.         submenu->AddMenuItem( filterSubMenuItem1,"Remove Item");
    ) b. o7 ]: c8 h' Z
  69.         submenu->AddMenuItem( filterSubMenuItem2,"Remove All But Item");
    , c, W, r" P" ]6 {& C
  70.         menu->SetSubMenu(modelhistoryfilter,submenu);6 q9 h4 S  u1 P$ _; \* I3 H
  71.         }  n0 U+ M. x/ I& g
  72.         else if (node==historyModeNode)! H, c% ~! n* [* C
  73.         {
    2 X; p1 v7 q) A% o7 H7 `8 F
  74.         menu->AddMenuItem(historymenu,"History Mode");
    : T6 F( a* h/ }; M6 I
  75.         menu->AddMenuItem(nohistorymenu,"History-Free Mode");5 v8 y3 u1 B2 X$ R1 _$ w2 ]
  76.         menu->SetItemIcon(historymenu,"check");* c$ l' x! ~( A. ~$ R
  77. }: o* o& j) c" |
  78. ! G" l4 l0 H& ^6 G9 `: u
  79.         }
    " k7 x; q) X% J0 x
  80. 0 C! }% y8 Y* c* }' i( h
  81.         tree_control0->SetMenu(menu);
    $ Y) {, N' V/ ~- U+ M" W' O, C8 P
  82. 8 x& O& L$ q/ ^3 T
  83.         delete menu;
    ( R1 @/ a% B+ @) I
  84.         delete submenu;
    , ?' o3 H7 g& u/ _
  85. }
    $ x4 [; s  B' \9 X2 e
复制代码

+ g/ o& f+ B$ V" `8 m* Q: u
, B5 S( C1 H, c3 G3 n# m% c1 c; W2 d4 U3 u( X2 j' w5 o
NX二次开发treelist控件添加右键快捷菜单回调函数的简单例子& h! Z* S1 H. I+ X! ^9 @

7 c% z7 H0 J7 M) G这里大概的模拟了下 部件导航器的功能!9 Y1 d7 P8 {% b* D/ d/ ?# y$ T) y7 ]) Q

3 C$ d+ j) A& A/ o! p. T
7 D$ M7 f4 I8 l" r0 ?, X

NX二次开发treelist控件

NX二次开发treelist控件
' \5 Z0 s" F& p+ h/ y2 y& ?
9 j6 V4 W" h) {0 t* `* K2 o( _

NX二次开发treelist控件

NX二次开发treelist控件

7 v0 a5 m% _+ i) y. b4 J
5 Z) v1 J8 a" a5 {  C( d8 Y% m

NX二次开发treelist控件

NX二次开发treelist控件

, f7 U* A: x9 d. F9 P0 @" }2 ]7 S% d: {3 a7 V6 k7 M

7 f& Y( L' U; Z
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了