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

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

  [复制链接]

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

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

admin 楼主

2017-4-19 21:39:20

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

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

x

8 z* D& r5 K" b- F- @" @' `4 p7 a/ k) @% \- B1 B
Catia二次开发源码分享: 关于创建命令和菜单方法- }# }' W0 m! d8 ?

' W/ @. L" i/ u, }& @# L+ i6 k7 V8 M( Q7 b1 Z. r
; v( a$ b& i/ j  w( s
//Methods implementation. _, s, z6 J. @
. d7 N0 p$ B/ w1 ?( I& I: q
void myAddin::CreateCommands()
9 s8 m. @0 U7 U( ~{: I: U. b" g8 p) g: ^; S5 F
        new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);. C; |: E9 [: x) }
        new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);1 S2 L3 u2 M- q# _
        new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);/ v) J& H2 B  ?
}( P$ ]# |8 W1 r. O- b1 a" M: a" V
CATCmdContainer * myAddin::CreateToolbars()
' v( A1 u. y1 B6 o, f- W5 X{
; E  R; o' ~0 I$ ]       
! y) d9 I/ F( ?        //设置工具条
7 w* K1 Z( N/ Q1 c# I# A        NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);" h  U) E6 E9 I: x0 ?( H
   AddToolbarView(pPartBenchTlb,1,Right);
) f. s9 ~1 @5 [; g
2 W3 x! x; [+ m$ s3 X        NewAccess(CATCmdStarter,pPointCmd,PointCmd);. i1 ^5 b$ r" }+ q) x
        SetAccessCommand(pPointCmd,"CreatePoint");
% W2 q7 t' K* k9 G8 i  X        SetAccessChild(pPartBenchTlb,pPointCmd);3 c* j, ]% {" E& o' y8 G. E
# x# z, u% L' w5 C
        NewAccess(CATCmdStarter,pLineCmd,LineCmd);6 w! m" ^6 U  Z. u/ v7 K
        SetAccessCommand(pLineCmd,"CreateLine");
; _! L' c8 c2 T. B        SetAccessNext(pPointCmd,pLineCmd); 7 u# Z' P: V5 o

* I2 D) R; S2 Y) K3 j        NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
; H+ x8 Y/ Q* Z" \        SetAccessCommand(pDialogTestCmd,"CreateDialogTest");, \) f! c; K' C; A  ?. u2 r
        SetAccessNext(pLineCmd,pDialogTestCmd); : L. \( {# @- Q3 b, `

  ^+ |5 F$ Z3 m% z; q8 x        1 y- j) Q3 P  C
        //设置菜单$ l8 v" [% \1 l" R

8 \6 r. S9 u. g: `; A- H4 {/ a" g        NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
% G6 w7 X5 O8 Q, k; D        NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);4 h6 V7 o8 j6 b  Y5 W8 K- p) V
        NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);, a9 u6 r% m0 g; f/ v2 c7 @
        SetAccessCommand(pPointCmdm,"CreatePoint");/ g- w( Z" i0 |
    NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);2 z, ]  u, S' j' U6 U4 i
    SetAccessCommand(pLineCmdm,"CreateLine");
0 o8 T" x0 p3 L& W9 K        NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);! `# [+ B+ F2 E7 a9 H( y
        SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");$ w/ J9 K4 k  |" M( a
        , @6 ^5 ~* j- a5 i
        SetAccessChild(pPartBenchMun,pPartBenchSmu);3 a) A0 E9 w0 A
    SetAccessChild(pPartBenchSmu,pPointCmdm);
4 H" {& ^+ T& Q, s* [        SetAccessNext(pPointCmdm,pLineCmdm);
: g3 @/ ^% {7 W& |2 d: ]. {    SetAccessNext(pLineCmdm,pDialogTestCmdm);
  F4 n" n$ L: s4 [
" o2 H7 Z7 z5 x2 J0 o+ N: ~& _    SetAddinMenu(pPartBenchTlb,pPartBenchMun);
( |" E% [2 H& ~  n# J$ U& t7 {! s3 ?6 U$ s0 N8 L& F/ Q$ r
6 |. k' O  |  ~: z

  k* Z3 Q) E# _/ K0 Y  u, `, N        return pPartBenchTlb;& D0 x) p/ P8 o- k/ j/ O1 B4 s
5 D+ U( P' f" g
}
6 m1 p3 s* M5 ?( q4 h/ F
& u. }1 T( j3 R9 C6 r
& p  F$ q, s( A3 X$ I- V
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复4

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

admin 沙发

2017-4-19 21:41:17

在 header文件CATRsc里面设置 图标
3 x8 \+ X6 C/ Y$ I# M8 M% V* @PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";
' N4 d; \% [% XPartCmdHeader.CreateLine.Icon.Normal    = "I_Line";. |$ h0 q, ^7 i' u7 b% Z
在PartCmdHeader.CATNls设置命令名称% ]9 j% r$ {: }( I5 p6 U4 y
PartCmdHeader.CreatePoint.Title    = "创建点";
1 E! A5 U  e3 c2 `: L2 tPartCmdHeader.CreatePoint.Mnemonic     = "P";- y* C' i) Y1 M9 N1 q
PartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
: R) X! `: N6 M! `" v5 DPartCmdHeader.CreatePoint.Help      = "创建点";9 {) _; i& R( K+ K2 M9 `9 B$ L4 B
PartCmdHeader.CreateLine.Title    = "创建线";; W3 |5 w( n3 |8 O* c3 W
PartCmdHeader.CreateLine.Mnemonic     = "L";( q0 ]2 B7 Z. Y/ Q+ S
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";; O, H0 c) q8 b. H0 @5 ?1 L
PartCmdHeader.CreateLine.Help      = "创建线";0 o- q8 Q) C* C! w' |0 T! k9 g# _
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";- [7 @) t- g* _* u
PartCmdHeader.CreateDialogTest.Mnemonic     = "C";
4 B& \4 S2 e3 l9 D2 F8 k5 r# B& b5 YPartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";
0 u- O% k" `( l3 L9 yPartCmdHeader.CreateDialogTest.Help      = "对话框测试";3 m8 [, O7 l: h# F+ c
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

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

admin 板凳

2017-4-19 21:41:31

在 header文件CATRsc里面设置 图标 , K3 P. O& I, G2 ~& P& x3 ~, M) q. E
PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";  w+ E6 v# Z4 _, C
PartCmdHeader.CreateLine.Icon.Normal    = "I_Line";/ t' e) m" L/ V/ u5 ?- R
! K& Y" [' e6 }0 Q! W" {$ [

/ l' f. F0 ?# q/ S* H在PartCmdHeader.CATNls设置命令名称
0 `% j8 n! V8 f; S( h: TPartCmdHeader.CreatePoint.Title    = "创建点";
" ~4 w  G7 d/ m2 z8 P( YPartCmdHeader.CreatePoint.Mnemonic     = "P";; T* b4 f  |& v! k* e+ N
PartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
. T# C+ B3 _$ w) S0 |: _PartCmdHeader.CreatePoint.Help      = "创建点";
5 b) v- C9 |+ m5 o* GPartCmdHeader.CreateLine.Title    = "创建线";
: _5 r+ x8 l& e4 D# V7 D0 E. x- gPartCmdHeader.CreateLine.Mnemonic     = "L";+ h& p" Z3 J. L$ U1 p
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";
( L% q% @& |8 K9 |8 dPartCmdHeader.CreateLine.Help      = "创建线";  `; j4 u$ g% @! O( ~' S% w& I1 |
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";
0 M0 w, Y5 i* D1 P9 N7 rPartCmdHeader.CreateDialogTest.Mnemonic     = "C";$ w' H* m& k: Y& O
PartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";
1 o! f3 u0 m: LPartCmdHeader.CreateDialogTest.Help      = "对话框测试";
: A* r3 h' l3 E; M2 B( s7 K1 L8 L$ Q
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了