|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
PLM之家-NX9.0 二次开发实例视频 29 TreeList添加快捷菜单功能8 y/ ~# C* ]8 |4 s
内容:3 d9 Z. i; P# G# C
添加创建完树后,可以通过添加右键菜单来完成一些快捷操作。
( U. y+ }" k/ j$ w8 C- S目的:
* ]9 N) c. G1 u; o% m/ O: V使用回调函数注册,进行右键菜单的添加,创建。
2 f0 ?& O( ~, ~( _关键代码分享:
, [$ d3 @9 L( l- l% ] N* K5 \. P- a1 i3 _$ M
, K* T$ T0 O& W; P. @ D) W4 S
6 E2 C) \: y, L+ T3 K2 l
6 |/ x; n& [3 ^+ _7 k/ G5 d, _- <p>enum menu2 @7 E$ z: P9 r6 n+ {! w
- {
6 L, w( L& ^3 o" g5 K - // no nodes
) y4 Y1 f8 }0 [) o5 W - expand,0 b8 O% \. p. t) A8 ^) ~& _8 F
- collapse,. D1 N! h N. f; }: [( ~
- // submenu
8 H8 o. H; B% Q" P* C( N/ X - column,% V' V6 I" o$ S: V2 L( S
- loadstatus, // nodes
* P4 n6 E8 j8 Z$ s! O - hide =0,
3 }; x/ G* ^" R4 E - show,; m: p! e: Y2 y. ^
- };</p><p>void lesson28_AssemblyViewer::OnMenuCallback(NXOpen::BlockStyler::Tree *tree, NXOpen::BlockStyler::Node *node, int columnID ): v& N; k. s, ~6 o0 N0 D5 b0 y
- {
( Z7 e( x$ B$ J) e - NXOpen::BlockStyler::TreeListMenu *menu = tree->CreateMenu();
, N: g# ^, K$ d8 q - NXOpen::BlockStyler::TreeListMenu *submenu = tree->CreateMenu();
( u6 u+ t# N2 x - if(node!=NULL)
& g) t1 \3 Z' q) [6 U7 N - {, S5 ?2 Z# M$ x- b$ ]+ Y R I
- menu->AddMenuItem(hide,"Hide","blank_object");
6 P$ l, O( e( w; F" f7 ^3 |6 h) | - menu->AddMenuItem(show,"Show","unblank");
# e0 C- S7 \( M, v - 7 P' i( Y# o' Y4 b
- }
y" b* I) \5 Q P# } - else
) I0 [% l8 _+ n( t3 o - {8 J5 {$ v5 ~) d3 q/ A/ v2 N# V' l# I
- menu->AddMenuItem(expand,"Expand","ant_expand_all");
. @; H: }; A2 f9 u - menu->AddMenuItem(collapse,"Collapse","ant_collapse_all");' v$ K0 H+ F+ A
- menu->AddSeperator();
+ V+ ~2 G0 K4 o! A ~) D - menu->AddMenuItem(column,"column", "table_select_column");
' O2 a" M5 E, R5 {( u( g: _ - submenu->AddMenuItem(loadstatus,"loadstatus");
3 p2 }" W9 x) F H( }9 E' A - submenu->SetItemChecked(loadstatus,true);
! _# V/ B( \! `! o - menu->SetSubMenu(column,submenu);9 T, v0 B6 `6 b7 N
-
- d5 P0 w5 R! |/ T+ R - }2 t( `3 I4 }' H. n: T
- tree->SetMenu(menu);
u1 s: c' x/ y8 n/ R - delete menu;. ?$ x6 m1 H- _1 u1 G% J/ G
- delete submenu;+ k6 }3 g6 {" U% p0 F( ?5 o
- }
复制代码 9 X1 @* U; P$ c c3 s4 X O
/ H# P, ]# v; z1 u) [' v9 l! L+ _ |
|