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

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

  [复制链接]

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

2471

主题

1276

回帖

8万

积分

管理员

PLM之家站长

积分
82201
QQ
发表于 2017-4-19 21:39:20 | 显示全部楼层 |阅读模式

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

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

x
# G4 W! `2 r9 x/ r, o

* b" M) ^7 \" LCatia二次开发源码分享: 关于创建命令和菜单方法3 i, R4 @4 N& F" I% H
" L* l) x3 x1 [& s* K% J* S
1 a; Q9 p' }$ {1 z8 E/ E& y0 y
; e' e0 [: e. t: n4 T3 N$ T
//Methods implementation
2 |2 Q; q2 z3 C$ H* ^9 u7 I8 ~
# y; t6 V6 A, ]' l  jvoid myAddin::CreateCommands()1 }9 L$ x4 y. I% S; O' b
{' Q0 [  ]2 C! u4 b+ c, d
        new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);; G2 n& E6 A2 v5 ~
        new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);6 H: a& A- I: s5 r3 Y- ^! L4 @/ m5 ?. g, S
        new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);# Y! T. _7 {9 @, p
}* M9 x% _3 R5 m
CATCmdContainer * myAddin::CreateToolbars()
- |9 K- t: \8 r8 _{3 U& i9 b, q2 p- |% o. p8 G, G
       
4 Y1 F1 p0 ^, D8 c" H3 V        //设置工具条2 T. z0 L3 [, N
        NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);3 Y! T6 J6 S& u5 d( C5 E
   AddToolbarView(pPartBenchTlb,1,Right);
0 ]' g- G! b8 Y( t) }& ]0 ~- ^; _$ |* i( U( Z
        NewAccess(CATCmdStarter,pPointCmd,PointCmd);
7 T+ H: b1 }$ A        SetAccessCommand(pPointCmd,"CreatePoint");4 {$ `. _: O% P/ {( h
        SetAccessChild(pPartBenchTlb,pPointCmd);, }- S- ]( u; F' V) C2 |
1 [5 W& x9 \3 }) ]& p& {  s/ Y
        NewAccess(CATCmdStarter,pLineCmd,LineCmd);, G9 w* o) X8 m( u6 B
        SetAccessCommand(pLineCmd,"CreateLine");
. X. c$ t4 L" C' d        SetAccessNext(pPointCmd,pLineCmd);
/ e5 ^, D, o& ]. O5 |: d/ a& x: c# [$ N
7 h5 y6 v5 p( b1 J2 M! u" r        NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
2 }! W! }* I) W. ]) V! I1 ^* P        SetAccessCommand(pDialogTestCmd,"CreateDialogTest");; b1 k! F. g9 T1 W, k' V
        SetAccessNext(pLineCmd,pDialogTestCmd); ; Y4 L8 Q& s( T1 U: a2 S9 {
% j1 o. u# L) E" B# I
        ' s$ e( E; _/ m3 a3 T
        //设置菜单0 z- v! i! {3 e7 U3 |) A: P" A
# _1 u  t* V0 l) d/ i
        NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
; i5 H% P. m) x/ R, G/ i9 f, a        NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);) l  b' l  n6 c
        NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);% k2 B/ v- @; L( ~0 Z
        SetAccessCommand(pPointCmdm,"CreatePoint");
- b! c  B+ p+ e    NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);8 E8 _9 _, L% g# N$ ?* i) e
    SetAccessCommand(pLineCmdm,"CreateLine");( k1 {7 n! l. }1 C) ^8 q6 C- C" c# w
        NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);" A+ z  p4 s8 `/ }  f( t: M4 j9 _
        SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");6 A0 ~' B4 Y1 c4 h
        0 a+ a) E& m0 {% M$ [6 }$ Y3 E$ v& R
        SetAccessChild(pPartBenchMun,pPartBenchSmu);; k- d5 x& X* {7 X. B8 ]0 D# Q
    SetAccessChild(pPartBenchSmu,pPointCmdm);
6 {6 ~1 \8 d4 F5 f        SetAccessNext(pPointCmdm,pLineCmdm); # S! Z+ L( \- d. a+ l9 U
    SetAccessNext(pLineCmdm,pDialogTestCmdm);
! `1 a! R5 |4 c5 U* L0 j4 }# l$ o
' ~' n0 `  h) Z# x+ u/ {( d    SetAddinMenu(pPartBenchTlb,pPartBenchMun);
8 u8 q1 @: `$ @2 h! I; q. O  w* N. R3 \2 j( b) s

. o! O$ Z$ _% I1 X; e# n: I- ^5 O3 z' ?' F( U
        return pPartBenchTlb;
4 j8 S6 o( T, B, B: Q! c  a& K  B! G2 F
}
, v. Q2 H( S# U* ~* N  W! M& i# ^( V) N7 ]; Q6 u+ c0 \9 M

# S* \* p, R+ O3 W8 Y
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复4

2471

主题

1276

回帖

8万

积分

管理员

PLM之家站长

积分
82201
QQ
 楼主| 发表于 2017-4-19 21:41:17 | 显示全部楼层
在 header文件CATRsc里面设置 图标 + y/ C- f) v2 m+ w8 `- b6 O  @
PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";" Y- w- ^+ j$ L" s
PartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
. O& f6 [) O: b9 Y$ ]) U6 o在PartCmdHeader.CATNls设置命令名称
. e8 c9 f% h& s) P9 P  Q9 rPartCmdHeader.CreatePoint.Title    = "创建点";2 V- J5 @7 C; u  g: a7 V1 S
PartCmdHeader.CreatePoint.Mnemonic     = "P";
/ n# H" T$ Q9 V1 x' z6 sPartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
% C/ v( h( F4 f7 ePartCmdHeader.CreatePoint.Help      = "创建点";7 ?  C0 z! ?  v( w  W& X) S
PartCmdHeader.CreateLine.Title    = "创建线";& L' Z. \% V/ w. l* f8 H% l( D
PartCmdHeader.CreateLine.Mnemonic     = "L";
3 Z0 e3 Y0 y" ~9 }% f6 ?PartCmdHeader.CreateLine.ShortHelp = "快速创建线";+ J2 ]. \# h9 M4 r; ~
PartCmdHeader.CreateLine.Help      = "创建线";: N+ P% I$ d2 Q1 R
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";1 z& k8 _4 U$ b3 [* v0 ?
PartCmdHeader.CreateDialogTest.Mnemonic     = "C";* |& L2 b6 T; D$ T* p! g
PartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";
9 [1 R1 e2 }4 w( z7 }PartCmdHeader.CreateDialogTest.Help      = "对话框测试";
9 }, F& x' W0 ]- l
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

2471

主题

1276

回帖

8万

积分

管理员

PLM之家站长

积分
82201
QQ
 楼主| 发表于 2017-4-19 21:41:31 | 显示全部楼层
在 header文件CATRsc里面设置 图标
: |- |( @1 Z% i7 u, {& f! N  ?PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";* f3 ^' u, T3 \% [2 G
PartCmdHeader.CreateLine.Icon.Normal    = "I_Line";) K$ x) R! h" t

; n1 ]7 G6 o' P0 }+ s+ m9 K' L. Q) s  T
4 p" t  p' Z% r6 O在PartCmdHeader.CATNls设置命令名称
" i. E4 y. r# v9 EPartCmdHeader.CreatePoint.Title    = "创建点";" r/ B; i+ ~) q
PartCmdHeader.CreatePoint.Mnemonic     = "P";: a+ S. q! B  h5 k% b7 Q
PartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
' y7 o/ l6 i( g5 t: ~6 YPartCmdHeader.CreatePoint.Help      = "创建点";
* R2 F5 g- a* }5 g: UPartCmdHeader.CreateLine.Title    = "创建线";
9 f% o5 ]2 P( u7 ]- FPartCmdHeader.CreateLine.Mnemonic     = "L";/ }# M! d* ]/ r
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";
4 x! k" b2 R, Q9 J# r: F# {2 kPartCmdHeader.CreateLine.Help      = "创建线";. o  ^+ Q. d2 @$ G
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";
, x/ z, B! e9 e$ l, p% B! r* k+ u" fPartCmdHeader.CreateDialogTest.Mnemonic     = "C";
  A7 `+ ]! F* a/ h, ~. q1 CPartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";2 T) f0 o1 W" u+ V& d" t
PartCmdHeader.CreateDialogTest.Help      = "对话框测试";4 O- d, K$ V& V8 ?

$ L: Y- J' c$ q
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

0

主题

2

回帖

14

积分

新手上路

积分
14
发表于 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.doteam.tech
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了