PLM之家PLMHome-工业软件践行者

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

  [复制链接]

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

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

admin 楼主

2017-4-19 21:39:20

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

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

x

  M9 S) g- W: w# ]+ s! }
8 ~! z8 B+ r3 E* R9 l* t( T1 iCatia二次开发源码分享: 关于创建命令和菜单方法
' Y1 y$ L8 }* }. r. ]- W4 M& N4 _& |# P8 u  f. [" [. k
# @7 [2 M3 i$ z/ V) M
; ?+ [/ i- |$ S  t: t
//Methods implementation' z! H$ N! z5 O0 r8 ?' ^- I; N* }

( {$ A' a  t6 E, k& s5 G3 pvoid myAddin::CreateCommands(), Z5 _  `& G7 s+ }0 {
{6 W" c" T! B1 Q/ J
        new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);5 c5 Q# x# G  a9 j% J9 g
        new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
% i. X/ G$ Z! `, U3 a        new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
  b& u" G& H- @3 S8 r" J}* o' e) a, U9 v' x
CATCmdContainer * myAddin::CreateToolbars()
! g/ V3 g0 Q/ _1 M( I{
6 N! u. D& m3 ~       
. T7 `; y: ?6 @- O- H        //设置工具条5 M; S& B' O# }
        NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);
% e1 {0 d; U7 f   AddToolbarView(pPartBenchTlb,1,Right);
$ a& ^' l1 b3 K( v4 Y, ]+ s, b% T3 \& {( ?# \/ b8 N  E9 {
        NewAccess(CATCmdStarter,pPointCmd,PointCmd);# _9 p' D4 o7 c6 V$ E
        SetAccessCommand(pPointCmd,"CreatePoint");1 n: Y0 Y. Q; d  r. {
        SetAccessChild(pPartBenchTlb,pPointCmd);- X9 Y, a6 [2 E4 o* l3 E/ Y. ]! n- u

" W# ~- |% @- w( N7 L        NewAccess(CATCmdStarter,pLineCmd,LineCmd);
, a' B0 k: [- \  X& Z9 F% F        SetAccessCommand(pLineCmd,"CreateLine");6 H$ l' `: a9 j4 @! }
        SetAccessNext(pPointCmd,pLineCmd); + j# {9 H' K% W; b
) U0 R5 S0 }, i, D
        NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);6 h: p  N! r$ _1 @
        SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
9 T; p3 J+ |8 H+ q) G9 {        SetAccessNext(pLineCmd,pDialogTestCmd); + N4 I3 f5 k4 b2 W
( _1 X. @6 n+ t& H
        + [) H- g) T; {' r: O# ~" }
        //设置菜单
0 |; |" ?1 w! g9 z& s3 G. ^' v6 q- J3 F. z, x1 [
        NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);9 @  [* x' ~& |9 m* G
        NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);2 M$ B0 s6 N4 }9 p8 ~0 b
        NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);2 _1 L; E; h2 ^! u
        SetAccessCommand(pPointCmdm,"CreatePoint");
! y4 _& f5 G, C! j' D4 i    NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);# _! a0 }2 j0 b# I, a- ]  Q# M
    SetAccessCommand(pLineCmdm,"CreateLine");" |& q  v! P- _( P
        NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
2 [/ E: S# D" I- I        SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");+ g! W* q  O8 O6 j  }
       
. E- m6 L& }2 m        SetAccessChild(pPartBenchMun,pPartBenchSmu);9 Y! p' [& F  B9 ^9 Q7 k) W
    SetAccessChild(pPartBenchSmu,pPointCmdm);4 M$ j. Q7 h" ]6 K' p9 {2 k# `
        SetAccessNext(pPointCmdm,pLineCmdm);
, g1 B% i6 Q2 b) ?0 D    SetAccessNext(pLineCmdm,pDialogTestCmdm);
* t+ N( `3 t+ Y; a1 N& ~+ d# j- m! B. r2 O" b* \% ~2 L
    SetAddinMenu(pPartBenchTlb,pPartBenchMun);
( R0 y# u* H% I/ j$ p' z9 E# ]
% w0 q7 J9 E+ G: i9 f% T: N+ j' ]
  L  g+ S! [7 M- }
4 G6 b" h8 i0 z4 o        return pPartBenchTlb;/ l6 m" k2 E. N  C

# }7 [- b# k' _8 I7 A}: ~, I7 s( S6 G# X4 E; L
) {& @9 M. N6 _: w# X2 H) ~( v+ w
8 J. ^; L7 R# `- W; w; t1 x, h: U
上海点团信息科技有限公司,承接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里面设置 图标
/ U6 h& y  z$ r! [! RPartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";
. H# p" o* @% u9 e% c' KPartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
/ f- F: o/ S( G% Z; I在PartCmdHeader.CATNls设置命令名称
; m) ~0 S; ]2 g  u1 T- ~  bPartCmdHeader.CreatePoint.Title    = "创建点";
- N0 A( }) D# a( I7 v' x  L5 mPartCmdHeader.CreatePoint.Mnemonic     = "P";2 q! @1 I& i3 O; V1 ]3 n
PartCmdHeader.CreatePoint.ShortHelp = "快速创建点";8 ]! A6 V, I' Q' c/ R* p/ `
PartCmdHeader.CreatePoint.Help      = "创建点";# @, V- K5 H! a8 P
PartCmdHeader.CreateLine.Title    = "创建线";' P: H* w# w* e1 T3 w
PartCmdHeader.CreateLine.Mnemonic     = "L";( K* I# E$ H) I7 j' F% |0 F$ B9 N
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";% p9 J& }- h7 k
PartCmdHeader.CreateLine.Help      = "创建线";
$ |; V3 i1 \1 @PartCmdHeader.CreateDialogTest.Title    = "对话框测试";. L3 |2 m1 R* d
PartCmdHeader.CreateDialogTest.Mnemonic     = "C";4 f; {- M% W8 x/ F0 \' Y: ^6 ?3 B
PartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";
% n. |& I5 G8 m5 q5 i1 hPartCmdHeader.CreateDialogTest.Help      = "对话框测试";3 ?: \6 m# V+ n1 V3 ^3 G7 W
上海点团信息科技有限公司,承接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里面设置 图标
/ X2 R, B( R0 N! a( v2 hPartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";( {$ j+ U+ N* x/ r0 `" L; O- N
PartCmdHeader.CreateLine.Icon.Normal    = "I_Line";! a- ^0 l; C# ?; [' Y
; n4 o: u( A; Z4 y
& R( Z* s( r8 O, ?7 C& I# a
在PartCmdHeader.CATNls设置命令名称
; G2 z: i1 u6 H( D5 LPartCmdHeader.CreatePoint.Title    = "创建点";7 v  S& r3 R0 V& Z* t
PartCmdHeader.CreatePoint.Mnemonic     = "P";
2 |$ s7 p, C7 x% LPartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
8 I4 O: N$ S' l+ iPartCmdHeader.CreatePoint.Help      = "创建点";
; W! h, X' `; Y& sPartCmdHeader.CreateLine.Title    = "创建线";
5 s5 a" O) G+ r2 yPartCmdHeader.CreateLine.Mnemonic     = "L";
; B( D1 W/ ^* H" _( G  vPartCmdHeader.CreateLine.ShortHelp = "快速创建线";8 o' M/ `3 K4 g4 c0 `. U
PartCmdHeader.CreateLine.Help      = "创建线";$ {* v# b" N6 I5 U
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";* b6 T7 h* K" H  N! f
PartCmdHeader.CreateDialogTest.Mnemonic     = "C";
* |# U! T! k; n; |PartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";3 Z! n! R0 H4 x8 U: M  f# W: k, `! j
PartCmdHeader.CreateDialogTest.Help      = "对话框测试";: D: i. |3 t+ ^3 Z0 s
+ O% L1 e- L) Q* {3 s
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了