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 5261 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 \. T- X6 ]: J( y  U2 I; x

  2. , R; ]5 s  ?8 W" }

  3. : k$ h% N: `$ |
  4. enum MenuID4 S, r+ U, \# z' }7 L- I
  5. {
    ' ~4 u. T0 e/ m% J5 `2 q
  6. RemovetopNode = 0,
    8 ^) s2 W) a5 |: D$ _6 n7 f% f
  7. DeleteNode,
    , x4 |3 X" U3 S. A9 f2 L5 r# s1 ~/ {
  8. CheckedMenuItem,# M1 m0 q- w) p/ S6 P# I$ w% O
  9. DefaultMenuItem,* i9 W, V! b7 d2 A
  10. DialogLaunchMenuItem,9 V7 A% w5 R; D) a, O5 j" ~
  11. DisableMenuItem,
    ! ]7 ~$ _- ]# c# D
  12. HiddenMenuItem,& E4 @& B- l( O
  13. IconMenuItem,
    ) t3 i. r+ o2 x9 G2 c3 y
  14. ; }, p. o+ H# i" h! S
  15. SubMenuItem1,
    ) }2 U7 E. w8 n' F: k
  16. SubMenuItem2,2 w" U  d: R& j5 M/ L
  17. SubMenuItem3,
    : Q, t. j; a/ K
  18. SubMenuItem4,
    / n8 X4 J+ p8 o$ W# F- [
  19. & E& P6 \( F7 w# x4 v$ |* j
  20.         historymenu,, h. j) }; U/ w$ I9 g: h  u
  21.         nohistorymenu,
    / ]1 R9 [3 o% q& r' y
  22. * o+ t2 V" F3 X2 i" X
  23.         modelhistoryfilter,7 i7 @( x$ I' R8 ?' A9 K4 {" j
  24.         filterSubMenuItem1,) [1 k$ G- \% e' ^! I. I
  25.         filterSubMenuItem2,
    & H- c) Z% x4 P7 R4 V3 b1 U

  26. * ?# U) x, I5 s

  27. ; W3 O* p( I/ U( p8 O& M  f
  28. };
    9 _+ }" y$ I/ a! D5 Q5 }
  29. void tree::OnMenuCallback(NXOpen::BlockStyler::Tree *tree, NXOpen::BlockStyler::Node *node, int columnID ), U7 A. ]7 j+ f% c2 a. b
  30. {6 R0 E- y, D. g& y3 E
  31.         TreeListMenu *menu= tree->CreateMenu();
    2 {% V$ q* _/ V6 L5 \
  32.         TreeListMenu *submenu = tree->CreateMenu();6 C( |/ F  x8 c( r' H" W
  33.         if(node==NULL)  J: O/ e$ y8 B( N5 S1 \1 a4 M
  34.         {
    9 l9 _! z& G" u+ u- e
  35.         menu->AddMenuItem(RemovetopNode,"Remove Top Node","delete");
    8 W6 X3 s; l3 ]/ T7 M
  36.         menu->AddMenuItem(CheckedMenuItem,"Checked Menu Item");! p. [  V8 \2 T! h5 C5 n
  37.         menu->AddMenuItem(DefaultMenuItem,"Default Menu Item");
    ' S5 N7 f, ], n8 Q
  38.         menu->AddSeperator();# q- N+ j' c; i4 p6 q- M0 v, o3 L+ k
  39.         menu->AddMenuItem(DialogLaunchMenuItem,"DialogLaunchMenuItem");
    ! W  ~# `" e8 e! u5 W& C
  40.         menu->AddMenuItem(DisableMenuItem,"DisableMenuItem");
    % q. G  v; S2 d+ X
  41.         menu->AddMenuItem(HiddenMenuItem,"HiddenMenuItem");0 I& u5 z" ~4 n/ F* F
  42.         menu->AddMenuItem(IconMenuItem,"IconMenuItem");5 u' X' j+ \$ C9 c7 R' Y3 I

  43. / i2 B7 i# \# x2 Q' Z
  44.         menu->SetItemDefault(DefaultMenuItem,true);" y7 v' H$ [, x$ _: x" Y' y
  45.         menu->SetItemChecked(CheckedMenuItem,true);2 E8 x. j$ K7 |
  46.         menu->SetItemDialogLaunching(DialogLaunchMenuItem,true);- Z" `5 n/ z+ E
  47.         menu->SetItemDisable(DisableMenuItem,true);
    % K, [) L  V- [0 D9 X8 C$ S1 P
  48.         menu->SetItemHidden(HiddenMenuItem,true);' L1 K  H- W% \; A7 q7 @
  49.         menu->SetItemIcon(IconMenuItem,"skeTCh");
    ' z' ]: p; R+ j
  50.         menu->SetItemText(RemovetopNode,"Remove Top Nodes");. D* A$ C$ k9 q
  51. 5 r" j( P6 O  O  G
  52.         // submenu
    - |$ \% x7 p5 J3 z
  53.         submenu->AddMenuItem( SubMenuItem1,"Model Views");& W4 n) F0 _2 i4 P$ j4 \: i
  54.         submenu->AddMenuItem( SubMenuItem2,"Cameras");, h& e# u9 Z) r
  55.         submenu->AddMenuItem( SubMenuItem3,"Model History");
    : A7 }' U# ?. G! o  @3 ?" L4 @
  56.         submenu->AddMenuItem( SubMenuItem4,"History Model");
    8 v( Z) [% [5 R0 u

  57. 9 Z* h& Y4 ~) `7 T  w# E1 n
  58.         menu->SetSubMenu(RemovetopNode,submenu);! o# a; _  [( L' n" c) Z
  59. ( P' j: A) O# F2 r
  60.         }9 E" f- j* L% v3 b, k, c
  61. else
    : y7 F' d; n+ C! ^4 G/ b4 c
  62.         {
    6 I& H/ L' u% t3 O/ f
  63.         if(node==modelhistoryNode)
    ( ^0 O  Z3 k, k- J% ~2 _

  64. 8 g/ ^+ W) f2 C1 M- Z6 C9 i  F3 G( q3 P
  65.         {
    . {* q: U: y6 z+ g  X. ?5 e
  66.         menu->AddMenuItem(modelhistoryfilter,"Filter");* f% u4 A3 M0 \7 b
  67.         // submenu) D8 ?* y0 t8 M( Y+ c- e
  68.         submenu->AddMenuItem( filterSubMenuItem1,"Remove Item");0 q: \$ D; u% H# r( h( v
  69.         submenu->AddMenuItem( filterSubMenuItem2,"Remove All But Item");7 T; ~$ b/ S( ]% a  d
  70.         menu->SetSubMenu(modelhistoryfilter,submenu);0 z. X* I0 w. u) P+ F1 R
  71.         }
    ' F: s0 n9 I# V/ @* h3 w' |; ?
  72.         else if (node==historyModeNode)
    # |4 o2 \; @4 q4 T( l
  73.         {
    . [4 x: L: q& ?0 h
  74.         menu->AddMenuItem(historymenu,"History Mode");1 |* {  `0 a6 Y) v) i
  75.         menu->AddMenuItem(nohistorymenu,"History-Free Mode");
    : x0 I; ?4 T; g2 G1 F& n* B
  76.         menu->SetItemIcon(historymenu,"check");
    - ^4 ?* s9 r3 ?
  77. }
    0 i+ }3 }% k8 t

  78. ' Y* Z, I+ W  N: U& ]9 Q. z5 N. Y
  79.         }$ t. a3 M( P3 \  I0 C
  80. " u' Y, p( [. c8 A
  81.         tree_control0->SetMenu(menu);
    1 m" s4 ?* [0 {9 ?+ b

  82. ) J( ]" O' A! M3 \- Y
  83.         delete menu;* ~: C( W7 o  [% o/ n" \$ t
  84.         delete submenu;+ s; m: F) _$ O6 k' M3 \
  85. }
    + I5 F: N( T! y! }' d
复制代码
, T% G5 S3 U! d& W# x. Z

% B" L' s! d( H% `
3 R% V+ |0 C5 ?( W2 w5 o9 ?6 LNX二次开发treelist控件添加右键快捷菜单回调函数的简单例子
4 x( w  ~( I  b6 g0 n: z" D' ]& }2 ~/ @* {( e9 [2 [  z' u! ]8 c% A
这里大概的模拟了下 部件导航器的功能!& O9 {+ {4 ]# b0 r% u

% N" q. c8 X. `4 n0 ^# q
  W% d+ d: {( I$ o. T2 e

NX二次开发treelist控件

NX二次开发treelist控件

! ]% M2 g* S  B3 V& X5 _+ O/ m
3 t3 J( f) a$ x6 M7 i$ ~3 l  W

NX二次开发treelist控件

NX二次开发treelist控件
: R( o4 J& F1 ^3 y- d5 F# L1 w+ _- m- {
' D  q9 A! `/ r- k9 A

NX二次开发treelist控件

NX二次开发treelist控件
. a+ B0 R( w8 t4 D7 R& r1 G
3 R( Y7 F8 d1 F# G8 O( g" y( J
% z' x7 z* K9 h6 T, K* F8 w  l
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了