|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
$ T2 M1 d4 k6 ^% J" ~+ D0 W1 G$ I- D3 t/ h: H
Catia二次开发源码分享: 关于创建命令和菜单方法
! A1 B: c0 F- U" A- Y7 `5 W8 L" V8 s g6 d
: f+ ?2 c' k5 i5 K4 F
$ l+ p" c; f9 S3 O$ L
//Methods implementation
% p3 L$ c0 U6 t
- a2 C" J# S7 N" Avoid myAddin::CreateCommands(); b. @2 U+ ]: w5 B, n# R
{. ]: L+ M, N6 Q$ D; U% q
new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
4 U; K: C& t; z6 N1 Y new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
p6 Y( g* `9 y: u& \8 S. z, U new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
7 u+ F7 \; S: H7 L}. @7 G. r1 x, W0 e% d, J
CATCmdContainer * myAddin::CreateToolbars(). W, |1 f+ v0 I% w6 n& ?8 M
{
& { `3 f" F) S8 U( W1 ~) _7 c' @' b) [
' T: g* S" K: y //设置工具条$ p2 o* K+ W. }$ V; l4 n
NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);" d. u7 o0 w2 o y; F
AddToolbarView(pPartBenchTlb,1,Right);
8 h3 { L- U4 K6 B) l5 s( P" A4 y! F7 g, e1 I$ g- M' A, }
NewAccess(CATCmdStarter,pPointCmd,PointCmd);
2 J3 L0 x# G- a, V. x7 E& N SetAccessCommand(pPointCmd,"CreatePoint");
1 d$ ^8 X6 e: \" ?7 Q, b SetAccessChild(pPartBenchTlb,pPointCmd);! g. z& S5 t+ v$ K
2 N( R' E- W& Z: k! |) x: T% }
NewAccess(CATCmdStarter,pLineCmd,LineCmd);
5 n( g0 e i2 n7 V7 w6 Y# b SetAccessCommand(pLineCmd,"CreateLine");
1 b- U' P5 C9 B SetAccessNext(pPointCmd,pLineCmd);
; }; I4 Z/ K! ]' O! x+ U# U; l5 v" {8 d
+ [% z$ K3 {0 U* V, p2 J NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);/ Q' N1 b; ]/ b' m- L8 V# n
SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
9 Z5 D$ t6 g* v0 e SetAccessNext(pLineCmd,pDialogTestCmd);
4 g( z7 B- P9 O$ X; M0 u: F1 r
1 P8 b' e4 B* [% O
8 l$ A0 R; S; A //设置菜单; @( T) v7 |( d& ^6 V0 t. L
y t( w' @# {. I! |2 u0 Y$ o NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
( ` w' V1 m: i% T1 u NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);
4 T a1 G0 h; q NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);* B+ |; ? i% j+ @" o
SetAccessCommand(pPointCmdm,"CreatePoint"); {& |- s" \9 z/ G* `% d
NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
3 P0 G& a/ b- l0 } SetAccessCommand(pLineCmdm,"CreateLine");
; R5 C5 [. K" G$ G NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
7 {; S1 o7 Y* h4 A: ` SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");
6 g$ ]& [" z. n
: m. b% K# F: l5 m) E) N* v$ o! u SetAccessChild(pPartBenchMun,pPartBenchSmu);
% z3 Z7 V0 y0 J SetAccessChild(pPartBenchSmu,pPointCmdm);
" ], W" X6 p# M% h SetAccessNext(pPointCmdm,pLineCmdm); 0 j- [( p7 q: R% n- D
SetAccessNext(pLineCmdm,pDialogTestCmdm); 6 E; S0 l) t9 n" s
! o# y/ b# Y1 a3 ~
SetAddinMenu(pPartBenchTlb,pPartBenchMun);
# H/ J9 y Q* h$ _/ P+ ^/ E" z- W$ D. `; ~% ?, {* m
0 L# G! T. Z1 C5 u6 s8 w1 ~! V& \5 r4 b" O6 r V9 e5 h' i2 p) s
return pPartBenchTlb;- U+ g" n! z. H' ^0 H
c8 C5 O; m+ A) W( ]% F6 L. p% ~& r
}
2 T/ j- }6 O+ ~5 M" V, j& h
( w- ^, f T9 _0 J
2 ^/ {$ ?7 j* [% _' D* @! G |
|