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

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

  [复制链接]

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

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

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

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

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

x
6 f2 c0 \3 Q6 Z1 _

# B" d3 i- U) W7 u% P) qCatia二次开发源码分享: 关于创建命令和菜单方法
4 x$ J# h) a* Z! t+ z/ f1 {# n2 N
. Y, r$ E1 Q/ x) S9 Q, E
5 w" J0 o  d* M7 L
. @1 C0 {4 E- Y' P6 l; ?0 `//Methods implementation
7 [9 Z2 C; z" }
6 f* O0 y: Z3 Mvoid myAddin::CreateCommands()
* P0 c8 f9 r8 D0 R- J{8 q4 x, `" Q, \9 k4 u* t
        new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);! @- [% q% n' v+ H
        new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);" U! w2 p2 f% m( v+ L; |
        new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);5 v3 e# M3 R! k7 t
}
" g* Q3 Y6 q0 \CATCmdContainer * myAddin::CreateToolbars()
  q2 e  |- d) R( I5 u% e1 l{
0 k& c( D" p  s. \. W( S6 c( D( C       
9 N7 @. }" U; v: [) K        //设置工具条
/ u6 u3 c4 P! e: X( X1 ], l3 J! ?/ P        NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);/ A. F, j0 T3 ~* v& W+ B
   AddToolbarView(pPartBenchTlb,1,Right);  w- D  N, V" t9 Y
1 e1 {0 ~8 u2 K% z9 z
        NewAccess(CATCmdStarter,pPointCmd,PointCmd);' x1 d* @. M6 {: u) F
        SetAccessCommand(pPointCmd,"CreatePoint");- X( T3 K5 I2 P5 C4 J
        SetAccessChild(pPartBenchTlb,pPointCmd);( S2 K5 o" w- K. u: I8 c
% S  y$ S$ L1 k  H
        NewAccess(CATCmdStarter,pLineCmd,LineCmd);
0 P/ ~% ~4 _6 a2 L) N        SetAccessCommand(pLineCmd,"CreateLine");3 D7 o5 U$ m3 @5 p
        SetAccessNext(pPointCmd,pLineCmd); 1 p8 P6 D) U# M2 |

/ Z) `$ w  u2 x+ r8 X- C        NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
) K7 ^# [8 |  |  |2 o% \        SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
* x8 n. X$ i5 W: v4 y/ _        SetAccessNext(pLineCmd,pDialogTestCmd); * W0 d/ Z0 g7 @: s: T8 @
# \2 I% Q. s5 L) _
       
* ~7 Z7 f7 [9 R  W9 V: i7 T        //设置菜单
  y4 T* ]' M$ F
8 n2 Q- W& _5 i        NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);* D" _3 Y7 G6 F) w
        NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);
, A* X/ J2 l: I/ k        NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);" o2 K7 `8 `9 \$ x
        SetAccessCommand(pPointCmdm,"CreatePoint");
" L3 Y1 b8 a8 Z& u6 _    NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);( E7 Z1 D  O& Q. y
    SetAccessCommand(pLineCmdm,"CreateLine");7 h$ w, r" U! O
        NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);2 t4 E- P. W3 w
        SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");
; Y9 N& ^4 d% K4 E# Q+ |1 @       
$ _" i8 [* A" D# L' d        SetAccessChild(pPartBenchMun,pPartBenchSmu);
) M' u; X2 g3 W/ D  f    SetAccessChild(pPartBenchSmu,pPointCmdm);
5 y/ b4 W/ T- X) i        SetAccessNext(pPointCmdm,pLineCmdm);
( K% `) N% C# @8 N$ b8 D4 K9 C    SetAccessNext(pLineCmdm,pDialogTestCmdm);
6 g. q1 O" B8 F0 n; X( @! I7 ?
. s& N# c# w- u  u0 v2 `    SetAddinMenu(pPartBenchTlb,pPartBenchMun);  L$ j5 b% c$ E2 C, g

; z' N& p- q: P$ s* \. C3 Z1 k( B4 U+ a9 b* N
: m. g$ B! n0 o- v
        return pPartBenchTlb;6 X9 ^0 Z5 Y( Z9 @2 _! m

7 z2 C3 Y! W1 p) F1 ^}3 p- R: V0 X* p$ F- q1 x

! }8 i3 i+ b. w5 E1 M4 w+ H  I2 g  \$ V; h2 b2 O
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复4

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

积分
82162
QQ
 楼主| 发表于 2017-4-19 21:41:17 | 显示全部楼层
在 header文件CATRsc里面设置 图标
9 p7 _: C  Q' U: b; JPartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";8 W3 L% F% O4 b
PartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
' x2 y; e7 A# X% C8 U# c在PartCmdHeader.CATNls设置命令名称
! g. K4 N  N! I! C$ I4 dPartCmdHeader.CreatePoint.Title    = "创建点";
& y- f5 |6 d0 a9 K* {PartCmdHeader.CreatePoint.Mnemonic     = "P";, E$ H. M# u8 y! z6 Z4 b& Y
PartCmdHeader.CreatePoint.ShortHelp = "快速创建点";- |' A/ H! g% x% t4 q- a2 b5 |, |& N
PartCmdHeader.CreatePoint.Help      = "创建点";/ ~; [' I% U4 B% d0 S. e# U
PartCmdHeader.CreateLine.Title    = "创建线";& l7 e2 }- K. `+ u
PartCmdHeader.CreateLine.Mnemonic     = "L";& ]2 x8 \, }5 i6 h1 J2 ~0 g% u
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";! p7 e2 _# g5 F: _: B7 a
PartCmdHeader.CreateLine.Help      = "创建线";& Y% X. v  D" z4 n; x$ |
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";4 M* u- E+ r3 K$ {4 V3 i4 X
PartCmdHeader.CreateDialogTest.Mnemonic     = "C";
+ l$ q+ ^) M- \0 P: U! _  _$ dPartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";
9 t* ?3 n. E( P* c& t9 QPartCmdHeader.CreateDialogTest.Help      = "对话框测试";' z' |- L" }# b
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

积分
82162
QQ
 楼主| 发表于 2017-4-19 21:41:31 | 显示全部楼层
在 header文件CATRsc里面设置 图标 2 f! }/ ?2 J7 R
PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";- N  g! h: M  T- B+ c9 y: U$ T
PartCmdHeader.CreateLine.Icon.Normal    = "I_Line";3 \: g( X" M1 ]+ X2 H1 H

) g& ?) ~; ]% `( L: A1 S6 u+ I! _
5 A+ M& {- o. y- q! ^& t在PartCmdHeader.CATNls设置命令名称5 t, `& O6 e, ~& d
PartCmdHeader.CreatePoint.Title    = "创建点";
/ o$ ~  x4 p2 H6 I. C2 C+ u3 z: TPartCmdHeader.CreatePoint.Mnemonic     = "P";
9 M7 {0 \4 v' {2 q  a) P5 y" v$ gPartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
; L: r/ ^1 Y3 e) S5 u9 L# RPartCmdHeader.CreatePoint.Help      = "创建点";' I# W2 g: o( b1 c. @
PartCmdHeader.CreateLine.Title    = "创建线";
$ \: F7 B9 }& @3 }+ hPartCmdHeader.CreateLine.Mnemonic     = "L";* f3 z! `" D  x$ a! f' s
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";2 C3 ]" q8 p8 D! D& F5 F& ]
PartCmdHeader.CreateLine.Help      = "创建线";
; L+ O7 ~" O1 w& p: S4 ?PartCmdHeader.CreateDialogTest.Title    = "对话框测试";
6 F( G$ @% V- j9 |, aPartCmdHeader.CreateDialogTest.Mnemonic     = "C";) ]* ~) x3 N  t! u/ M
PartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";5 g6 k/ D3 ~& R6 h5 r- l# p
PartCmdHeader.CreateDialogTest.Help      = "对话框测试";: b5 W* ^! E: I( A1 k% R

: ?9 f* W% f' k7 b# ?# F- e
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了