|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
PLM之家-NX9.0 二次开发实例视频 29 TreeList添加快捷菜单功能
! {5 ^6 a* h) i- L3 Q内容:
7 N1 i( \% j5 _& B- L4 @ x3 V添加创建完树后,可以通过添加右键菜单来完成一些快捷操作。% i9 ]6 d; A) n q& o
目的:
. p# y# y- h8 ~/ u8 A9 I$ j! Y使用回调函数注册,进行右键菜单的添加,创建。
, `9 Z X0 i0 M: p1 w关键代码分享:
" J% u' F5 Y+ D$ G2 s" L b
& R" `5 m: M4 s: M: A6 }
1 }/ a3 h/ S! `! ~$ w* F5 v" ~( y2 z; u! w( U9 `# E5 ^
. Z; S3 ?* s4 i' m! m8 j
- <p>enum menu
' |& `, V( E; i4 W - {0 d& Z& e! Y- g
- // no nodes9 \3 l" }- M: v/ @0 y5 Y$ N; ~
- expand,: F/ j" P2 C. D! a
- collapse," L, }' U! P* e5 X1 Q1 S/ D
- // submenu5 h0 G2 l- l- Z4 { C
- column,
9 w/ O {, Q0 r9 G - loadstatus, // nodes
J3 y3 U' Q7 x! A. U - hide =0,& h5 Q; L4 E7 A5 _' B6 p
- show,! R, J7 F% \, a$ d* h
- };</p><p>void lesson28_AssemblyViewer::OnMenuCallback(NXOpen::BlockStyler::Tree *tree, NXOpen::BlockStyler::Node *node, int columnID )& f/ ]5 j( Q* c5 K. F0 A
- {. h7 Q7 S n( }3 Q9 s& f6 u
- NXOpen::BlockStyler::TreeListMenu *menu = tree->CreateMenu();; g: f9 V& ]% H! H K, W6 H
- NXOpen::BlockStyler::TreeListMenu *submenu = tree->CreateMenu();6 e( \) @" D# N
- if(node!=NULL)
8 ^1 d* V0 w2 v' C! z - {
( F4 O9 p' E# i% s" A; L3 F7 s - menu->AddMenuItem(hide,"Hide","blank_object");
! D- @8 U" Z6 Q - menu->AddMenuItem(show,"Show","unblank");+ }' }! I2 H9 u5 c0 S( e
- 5 w; i9 s3 \* k: m5 N! N6 r
- }
# P8 t7 q* y2 S( e0 `* S+ N - else
, G- T! S! B8 y6 W& r' n& ?+ E, v9 p - {
# X- ^1 {( A# K N2 X: s# y5 c - menu->AddMenuItem(expand,"Expand","ant_expand_all");. m; Y/ c) o1 x+ s
- menu->AddMenuItem(collapse,"Collapse","ant_collapse_all");- _# @4 D* v3 b! Y& B) k$ K
- menu->AddSeperator();
- s, y0 G2 \" P; h5 m+ Z - menu->AddMenuItem(column,"column", "table_select_column");1 B( H7 P- Z: J8 t/ P
- submenu->AddMenuItem(loadstatus,"loadstatus");
( |9 l" ]/ z1 m& v - submenu->SetItemChecked(loadstatus,true);
Q/ C2 s3 ~2 i. Y - menu->SetSubMenu(column,submenu);* r5 n2 V, M" I6 H1 J* u3 x8 ^. y
-
( n. N6 ]2 W; R. |, k - }& P; g& a" M. n Q- t9 D: R) M2 m
- tree->SetMenu(menu);
. L3 q+ D+ i6 y8 d1 t- d - delete menu;) @5 _, d- a( b- o8 g
- delete submenu;
$ J) ~# F( N& e - }
复制代码 # g4 O& S: t c9 Q: J
! ?& R4 M4 ~3 K. O. d
|
|