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

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

  [复制链接]

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

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

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

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

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

x
  L, z  H7 P- e3 [. Q' z9 H1 ]

# r) v; W3 w6 Z1 @; F3 P' o% j# @Catia二次开发源码分享: 关于创建命令和菜单方法
$ S, Q2 x; |# a8 d/ M
" x0 }9 w' E/ O- K5 g  r
1 a  D9 |+ F9 u9 K. H  @9 o2 L3 k
//Methods implementation# g& |7 C+ m2 [; S% y5 D

+ v  _6 n2 ^; ovoid myAddin::CreateCommands()
2 [& |- `" y* ~- p, F+ A{
8 C. ]8 H+ V1 D5 h, g3 [: M" R1 y        new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);9 N2 z7 g' f7 Q
        new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
0 p" L6 h3 e6 H& g5 q- y, ~        new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);  f$ j* {. b8 I! H3 Y8 C
}2 C% M3 |& [" ^
CATCmdContainer * myAddin::CreateToolbars()
8 {4 J7 {2 j5 o- p. _1 _8 \{
' R# M9 P4 E, \) n" e        * P$ \- J4 T2 T% t
        //设置工具条% m$ E9 s; Y2 a
        NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);
, o1 w3 u' T9 U/ O8 n   AddToolbarView(pPartBenchTlb,1,Right);4 m# }* y) _! Z5 i, k- h
4 J7 h, D- `7 ^  t
        NewAccess(CATCmdStarter,pPointCmd,PointCmd);1 z7 m$ o$ O) Y6 c9 A, D: y
        SetAccessCommand(pPointCmd,"CreatePoint");- W" h2 K5 J3 Y+ \' i5 e6 A
        SetAccessChild(pPartBenchTlb,pPointCmd);( `4 p+ [: |6 _

8 W5 E# H" t* m1 X6 m        NewAccess(CATCmdStarter,pLineCmd,LineCmd);
) m+ g; B( j" b7 t        SetAccessCommand(pLineCmd,"CreateLine");
" o# k& q  B0 A# U' X        SetAccessNext(pPointCmd,pLineCmd);
& M- K! A  V. J) a' X
- |9 @/ D! n/ S; [. A& S        NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
& s/ [$ f# e5 N" K+ J        SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
" K0 i  ]4 P8 g: q+ S        SetAccessNext(pLineCmd,pDialogTestCmd); 1 ]* L. e4 t9 z2 X  ~

) m. ^" Z/ f  K3 V        ; p# C  a3 t& i3 q) }% ?
        //设置菜单% F" N( m' S9 a* ^" t, c. N& S
0 n  u7 c! _2 I/ k
        NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
9 M5 S$ P& v% l        NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);' O; l7 X9 _$ z4 c/ ?# o$ n$ I7 @
        NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);) ~6 d+ Y) @4 b
        SetAccessCommand(pPointCmdm,"CreatePoint");$ _6 L3 G* l! n+ \
    NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
/ ^: h9 t( R! o1 N5 c    SetAccessCommand(pLineCmdm,"CreateLine");
* g3 e/ y$ i, Z% L4 x9 l        NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
* ]- Y# [/ s6 I# s& p4 d' _/ o        SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");9 S7 Q8 k6 r+ [2 y
       
3 j9 C; f" W  t; v% f9 j        SetAccessChild(pPartBenchMun,pPartBenchSmu);
# ]; z" g2 l9 r4 B    SetAccessChild(pPartBenchSmu,pPointCmdm);
0 q3 W+ s- }3 B* q        SetAccessNext(pPointCmdm,pLineCmdm); " p2 Q! W1 V8 N! z- G: A) K
    SetAccessNext(pLineCmdm,pDialogTestCmdm);
; `5 R3 }& s2 P/ `# s0 E9 @, n
0 s9 r. T6 ~' {9 a0 U/ {, \7 I    SetAddinMenu(pPartBenchTlb,pPartBenchMun);9 ^0 ]5 i( G0 D, J1 V) [
9 |& l0 `# O( F; C# }( N+ S1 j$ N

# Z5 P! c! V" ^' ~  F3 P* K! m
2 p! E+ o# }8 _8 W  p" y, S/ A! R/ S        return pPartBenchTlb;
( Z9 |- c- w2 E7 h: f2 Z% u+ c1 W* ^8 y  v2 [1 `% q
}
$ [7 z' m) n2 O- o- r
( s% c5 j% F" }. c% Y) z: D" w6 J5 L5 H
上海点团信息科技有限公司,承接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里面设置 图标 " S- V$ a  ~! @, p) K
PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";: V+ [! f9 {# f/ S
PartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
+ E0 [) c9 U$ `9 ~在PartCmdHeader.CATNls设置命令名称
* F3 Z, V% \+ E# |& G. X: x% jPartCmdHeader.CreatePoint.Title    = "创建点";
: i% W( v8 F5 O9 a# y* t3 gPartCmdHeader.CreatePoint.Mnemonic     = "P";/ o" ]2 R" b6 G
PartCmdHeader.CreatePoint.ShortHelp = "快速创建点";8 j/ x( n* k* a& P' V5 j* D* u
PartCmdHeader.CreatePoint.Help      = "创建点";
/ a# V+ s0 Z6 l* iPartCmdHeader.CreateLine.Title    = "创建线";5 Z1 y2 n  i0 K1 {
PartCmdHeader.CreateLine.Mnemonic     = "L";
; g" Q- f* a3 K( }, A# x& }- SPartCmdHeader.CreateLine.ShortHelp = "快速创建线";3 \1 W! u- f  V
PartCmdHeader.CreateLine.Help      = "创建线";/ ^3 P+ j! y$ w7 y+ C9 c
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";
3 y9 u! A5 @2 F5 w* k7 [PartCmdHeader.CreateDialogTest.Mnemonic     = "C";4 f+ C; _9 Z+ }1 F  s& e
PartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";2 w& S: l7 C5 y8 S* b$ A
PartCmdHeader.CreateDialogTest.Help      = "对话框测试";- X. K" j% n* y: r" ^
上海点团信息科技有限公司,承接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里面设置 图标 5 h' S. k; ^  {
PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";; m3 _/ Y: C$ s+ M% ]
PartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
& r, G. m1 S  g! ^. C. `3 o$ N0 F/ k+ v# |

; O9 H' Q: E$ R1 q: `8 l3 Z在PartCmdHeader.CATNls设置命令名称0 y8 z" h: K6 A5 H! B2 e5 a6 c
PartCmdHeader.CreatePoint.Title    = "创建点";
) M! G. z9 c. s+ ^% F2 u7 gPartCmdHeader.CreatePoint.Mnemonic     = "P";
8 p( M$ V3 G! I/ Q* h& HPartCmdHeader.CreatePoint.ShortHelp = "快速创建点";; S, y& @8 ^6 Y
PartCmdHeader.CreatePoint.Help      = "创建点";$ i& d/ d5 e) ~. R
PartCmdHeader.CreateLine.Title    = "创建线";
$ p# q" E1 p" r& e- X8 oPartCmdHeader.CreateLine.Mnemonic     = "L";6 x: {; m# Q1 b  N
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";
. M2 d7 I9 s% \% h1 nPartCmdHeader.CreateLine.Help      = "创建线";+ K" ~) K, [8 `- |2 _
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";  X( C$ r* D! x% x% Q
PartCmdHeader.CreateDialogTest.Mnemonic     = "C";
# f# o& _) J& P# gPartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";4 v" g: U$ v) b# k
PartCmdHeader.CreateDialogTest.Help      = "对话框测试";
. v# }: Y4 V2 Y1 r$ }/ ?0 ~
# e/ P; ]! C9 S
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了