PLM之家PLMHome-国产软件践行者

Catia二次开发源码分享: 关于创建命令和菜单方法

  [复制链接]

2017-12-12 17:18:06 5965 4

admin 发表于 2017-4-19 21:39:20 |阅读模式

admin 楼主

2017-4-19 21:39:20

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
6 N  \4 x  R2 e# s* w9 j& m

2 t3 D$ j- [6 `# SCatia二次开发源码分享: 关于创建命令和菜单方法
" A) _4 d" A+ Q* O7 ~1 [8 ^. D' \4 a* n, e
$ L0 X) S# O- ^, Q6 B7 q

/ Q# d3 s/ m1 @: q, v//Methods implementation
3 i6 F8 Q* O9 M% d# W3 t5 J+ I$ R, u3 {  f/ G6 e
void myAddin::CreateCommands()
4 n% r$ ~( J$ y/ g. t7 ~5 B. D( n* P* I" y{
7 e5 d# T; \5 I- U) k5 p        new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);! e+ |$ ~* {3 v9 N: f
        new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);( F3 r6 t4 S6 y3 [7 D, r
        new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);: f  i+ T9 s: V  M6 f( f' d/ a) j
}
- S& C& D  Y) j. K7 b" W- S/ |! X, {CATCmdContainer * myAddin::CreateToolbars()8 c( Z% b- t* A) A. {/ {$ q
{
) c8 M: W. N  ~; x) B2 ?% j9 P7 o( V       
! @( \4 E4 M  H1 I: t5 h        //设置工具条
/ c+ y) Q' K" P- [7 s# B        NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);, S( a  q; W) K$ z& L( h" c
   AddToolbarView(pPartBenchTlb,1,Right);
( R/ m2 f7 K" G: u# \' e- H; @. U$ c2 m
        NewAccess(CATCmdStarter,pPointCmd,PointCmd);- v. g# t! J& x" D( i
        SetAccessCommand(pPointCmd,"CreatePoint");
7 ?0 s4 o' [2 s! D0 u/ T        SetAccessChild(pPartBenchTlb,pPointCmd);% \7 n# f" I( T+ {9 @  k

$ i7 v6 ~: a8 h4 {- t        NewAccess(CATCmdStarter,pLineCmd,LineCmd);* X: X7 ~/ w9 a) p5 E
        SetAccessCommand(pLineCmd,"CreateLine");1 l! v  s% P: v6 z$ p; p# X) W% N
        SetAccessNext(pPointCmd,pLineCmd);
' {' G: H, a7 {5 @4 J, j2 P  ]
% k) D( T7 D# |: Y- C. Q        NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
4 O2 z. p) m4 Y% ?" d  K. I7 j        SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
6 t' {, V1 m7 d+ I' B, W, {/ G5 z        SetAccessNext(pLineCmd,pDialogTestCmd);
. F/ \6 P8 J4 V, t/ J! Z3 M% X3 Y
        : f6 U& K: e2 P( \! l2 a) z
        //设置菜单
1 n+ Y: y7 C& C2 y
0 N  H1 a# m- X; E5 b        NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
3 w1 y4 Z- k, M5 O4 J7 n        NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);
* L, D$ W* I  O! R        NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);
; F/ _% e/ T2 W$ m        SetAccessCommand(pPointCmdm,"CreatePoint");
9 M6 y1 W3 k$ F; i% E/ K    NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
1 L6 s4 a5 R' [& ~0 D- K    SetAccessCommand(pLineCmdm,"CreateLine");+ ^- {5 I( {1 I8 Q
        NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);. R2 S4 z- A0 ?8 e' _- Y: z
        SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");& ?3 h) [7 I6 O5 T9 r
       
0 G) e- N4 n- t        SetAccessChild(pPartBenchMun,pPartBenchSmu);
* I# E& Q4 F+ [# c    SetAccessChild(pPartBenchSmu,pPointCmdm);" T% U( V0 |% c
        SetAccessNext(pPointCmdm,pLineCmdm);
# q) T9 ]) T$ e0 f    SetAccessNext(pLineCmdm,pDialogTestCmdm);
! \7 r+ Z$ M  @8 B7 l$ [3 U+ k
- U/ T, ]3 D$ E' p% R; P    SetAddinMenu(pPartBenchTlb,pPartBenchMun);+ k5 N* p# Y3 I7 s7 L5 Q( c8 E

: S# j2 J# |+ V9 e& S7 _* R7 H# B- T- L6 }; C/ ?* X4 l1 t
; I; w' {& ]6 o7 `9 v* _
        return pPartBenchTlb;6 j! L; f, d1 `5 v; @5 m3 e
  z% @  H' T, v" z0 v" @3 |
}
: S& N: h/ _6 x. r/ f
% H: _' x4 {2 t" E# Y0 S$ U- I* [& S, q  C
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复4

admin 发表于 2017-4-19 21:41:17

admin 沙发

2017-4-19 21:41:17

在 header文件CATRsc里面设置 图标
0 v; Q* Y1 p: z5 _8 j& vPartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";2 y4 h0 E8 U6 w5 B& G0 t
PartCmdHeader.CreateLine.Icon.Normal    = "I_Line";, R" C# l' j& e; @2 e9 i) f
在PartCmdHeader.CATNls设置命令名称
8 |0 t/ u( R% ^: v" h' t- VPartCmdHeader.CreatePoint.Title    = "创建点";$ f, k8 h  K! _% ^2 B0 Z
PartCmdHeader.CreatePoint.Mnemonic     = "P";) ?# [  L5 C. u1 c
PartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
6 O' {( F/ x0 {+ pPartCmdHeader.CreatePoint.Help      = "创建点";* T  m1 x: p' ^5 P2 k
PartCmdHeader.CreateLine.Title    = "创建线";
; m: H2 g# u1 U* H+ e* CPartCmdHeader.CreateLine.Mnemonic     = "L";
1 {' C( i3 L* p. S- p$ M1 ~PartCmdHeader.CreateLine.ShortHelp = "快速创建线";7 t3 R* A9 [+ Z5 ~) d4 i  ~
PartCmdHeader.CreateLine.Help      = "创建线";( y7 S0 n! n" ]# k
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";' Y- e$ w, d* y; m6 j  w( {+ w
PartCmdHeader.CreateDialogTest.Mnemonic     = "C";
1 p4 J: `3 a2 q2 Z. @% `$ MPartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";3 S3 K. O* Y+ ]2 v" o
PartCmdHeader.CreateDialogTest.Help      = "对话框测试";
# V6 m: X( ~1 u  c/ j
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2017-4-19 21:41:31

admin 板凳

2017-4-19 21:41:31

在 header文件CATRsc里面设置 图标 4 f! d* i; V3 M. j$ ?
PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";
0 n3 [9 h3 I  F. o" n+ m9 e. aPartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
* W3 d. v" K, A8 e% h# \  v+ n  R5 ^1 H
+ H8 Z5 g4 L/ b* O' r
在PartCmdHeader.CATNls设置命令名称
2 _$ I5 n$ ]$ BPartCmdHeader.CreatePoint.Title    = "创建点";
( B& u1 b& A8 ]( O+ @7 I( N9 n: Z4 RPartCmdHeader.CreatePoint.Mnemonic     = "P";
$ D' e! {4 e9 ZPartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
" I5 o$ i* Z: bPartCmdHeader.CreatePoint.Help      = "创建点";
# Q/ ^. x8 T* H- l# }% @( q0 pPartCmdHeader.CreateLine.Title    = "创建线";
1 F9 x& |6 c+ k& t$ BPartCmdHeader.CreateLine.Mnemonic     = "L";4 ~8 R/ B5 I, P7 h6 F3 {
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";
+ i4 ~0 z) `1 `/ BPartCmdHeader.CreateLine.Help      = "创建线";4 [) Y/ v0 m9 ~) `0 N
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";
+ C% u' P. I+ a. T6 ?9 B' m7 pPartCmdHeader.CreateDialogTest.Mnemonic     = "C";/ f, ?. e' C. n* i
PartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";" p0 T: L! f8 K/ M9 e; e2 T
PartCmdHeader.CreateDialogTest.Help      = "对话框测试";
) h/ d# S6 s1 r: B! D
9 w2 Y( R7 s/ A/ W
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

大飞行家 发表于 2017-12-12 17:18:06

大飞行家 5#

2017-12-12 17:18:06

刚做CATIA开发,不知道从哪下手。。。现在只会简单的创建2D图,还有简单的实体操作,怎么提高?
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了