|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
c& {8 i+ O! j1 u9 a
# q6 W( S$ |4 BCatia二次开发源码分享: 关于创建命令和菜单方法
- Z2 W0 Q. ?8 n6 `, n( t* G; A6 i& K
! \8 B! c- y" l1 y1 a; u W9 }
5 N E1 h! J% m. [//Methods implementation+ {* Y7 Q% V& [
+ ^9 I. n z5 p' t7 {# B/ _4 ivoid myAddin::CreateCommands()3 H* p# B& E6 R, L
{
' d) X a j) c; _$ ]1 H3 N* | new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);0 Q0 T% l2 ^: t3 ]5 k
new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);5 Z7 M" [* ]$ M+ G+ O& m
new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);' `. s: I1 ~3 s6 v* n( ^5 U \1 Z
}1 f6 i3 \4 i4 |4 K+ Y }. K, b- l
CATCmdContainer * myAddin::CreateToolbars()3 l1 U, L8 q6 u+ ~7 s" M
{- _% V" H* y' _( _' [
6 I: p1 s" \0 w- k; K5 }; g9 i# Q( p //设置工具条0 k$ J; _/ k3 |' H( X
NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);7 @1 I, e- d. D; w
AddToolbarView(pPartBenchTlb,1,Right);8 }8 i$ W, v6 Y1 O7 C0 W- a$ o' E2 P
4 O% w; K3 ^% G2 R' y- U0 H
NewAccess(CATCmdStarter,pPointCmd,PointCmd);# i; F" X" p9 R4 |$ `# m! j
SetAccessCommand(pPointCmd,"CreatePoint");
+ E+ A# Y9 Z& K# J SetAccessChild(pPartBenchTlb,pPointCmd);
: H) Q. b0 u. p/ _. z
# g2 i1 |5 q I4 E$ ~, Y NewAccess(CATCmdStarter,pLineCmd,LineCmd);
$ m/ `2 P( R% _- U SetAccessCommand(pLineCmd,"CreateLine");0 n1 f1 [3 a! P/ t8 H9 A
SetAccessNext(pPointCmd,pLineCmd);
3 _8 w+ ]% i4 q# C# k7 \- w0 h6 ^. x; F1 S
NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
+ P2 `7 d: x+ f2 m SetAccessCommand(pDialogTestCmd,"CreateDialogTest");' ?2 r9 n. d5 i. g. n& t
SetAccessNext(pLineCmd,pDialogTestCmd);
) V( \* K8 G# [5 k; W8 }) Q- s: l+ e$ y. c
* i% l5 \! P* _. B //设置菜单5 Y: L; ?* w$ e4 |( |
" H1 |, n9 ?. J# L3 a5 W A
NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
0 o& v5 @' u& K I; c% i& J6 O NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);- c h0 k, m. c( x
NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);
) D2 x7 Z0 x9 y$ S* Z' F& {2 A- J SetAccessCommand(pPointCmdm,"CreatePoint");
% \# c8 b! V: z3 S ^4 b) s; _ NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);& e, Y2 o6 v6 M) ?5 U. E
SetAccessCommand(pLineCmdm,"CreateLine");
* R: B" z0 x) o; n) b( X2 N NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
3 ]% `9 }( u/ F. x k SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");' l7 q6 |& p/ s+ R
! b* ^9 t8 i5 V) l) z7 ^6 k* J
SetAccessChild(pPartBenchMun,pPartBenchSmu);1 v$ m9 l6 c0 C. k" @7 Y1 d! q
SetAccessChild(pPartBenchSmu,pPointCmdm);
3 k7 C4 Z8 u# N0 ~4 s SetAccessNext(pPointCmdm,pLineCmdm); " M' n0 G! S% A
SetAccessNext(pLineCmdm,pDialogTestCmdm); 8 g" c+ `( k ^9 [+ T9 j
4 {5 S6 b' i+ E+ Z- H2 C: a SetAddinMenu(pPartBenchTlb,pPartBenchMun);4 _. E, J4 U0 M; a H
: m3 J+ n& x) J- O8 @" b
) j/ J9 S: ]- _% y
4 |# O3 t! }7 e/ r4 O return pPartBenchTlb;/ u3 _, z4 S* b! W9 s ?0 x# J
t, o+ Z% X$ O( Q3 m, C6 A}2 Q) ?: R) q3 ~
# ~. [, P `3 ~2 f
! Q; m+ V$ |2 N
|
|