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

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

  [复制链接]

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

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

admin 楼主

2017-4-19 21:39:20

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

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

x

6 y; w" k; X/ k) _( q
( y* a3 i2 j6 p! ICatia二次开发源码分享: 关于创建命令和菜单方法. w# A# I& S: e. b" M6 J5 t

$ e# m' L; p  r6 B& z5 E. ^. D) O' U, w4 t" q0 {
! I% T3 E$ B  ]9 P* L" d
//Methods implementation
& {8 a, {) o4 s) J
# y! \% |) K+ j; t- \8 f% Q! vvoid myAddin::CreateCommands()
4 s' u' u, L6 J{
9 K6 P1 W' b! f. y7 c' z/ S        new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
8 P. D/ Q: n# I        new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);9 }4 T" I* k8 k' k) p) t- @0 Y
        new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
! _+ L/ p2 v2 t1 `$ `}1 S0 D# d9 i9 J5 {" R4 c1 M
CATCmdContainer * myAddin::CreateToolbars()
. w9 w# \! ~1 D{8 Z3 n, i' V/ k3 T$ z! x
       
2 I/ ]% a. l8 b- F        //设置工具条
0 t" e' D( |- C; v        NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);* l  L& G( ^" t- L; J' E4 t
   AddToolbarView(pPartBenchTlb,1,Right);
& T% Z- i) M) T. T# C% \7 y9 G. b9 A/ @/ u- S
        NewAccess(CATCmdStarter,pPointCmd,PointCmd);
) Z1 `8 }. x2 b+ r+ v  J        SetAccessCommand(pPointCmd,"CreatePoint");
5 l2 C4 F* c; U2 u- F2 @) g        SetAccessChild(pPartBenchTlb,pPointCmd);* f5 I# w8 f" G& |( k  K* J
) U. o: R$ D# F1 b
        NewAccess(CATCmdStarter,pLineCmd,LineCmd);
. C% F3 H$ T5 \1 J1 n        SetAccessCommand(pLineCmd,"CreateLine");: l8 {/ t  V0 s# u$ K2 e
        SetAccessNext(pPointCmd,pLineCmd);
4 r/ G6 v3 k3 ]( W4 N3 B# J: u! z2 `8 @2 M2 G& A
        NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
5 a& Y* V6 q- W' M        SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
& W5 a' m! z9 ~5 Y        SetAccessNext(pLineCmd,pDialogTestCmd);
  P4 {  z) V2 G" e7 Q6 S8 R# h$ [. P! Y( y9 Z
       
: m9 E( _/ v; r: q4 v        //设置菜单8 S3 A- T$ V& {0 _2 h6 D; v3 {

& a3 i4 K# l# G: A        NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);6 I$ r) |, V& p/ y7 ^9 n
        NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);" K: W$ L4 z# ^  ^+ Q# f
        NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);
  J+ V8 L0 E4 G6 U7 w: |6 d0 ]        SetAccessCommand(pPointCmdm,"CreatePoint");5 x4 ~+ ]8 g/ H9 W! ]- z$ d/ |
    NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);. _: W) f( t" |. b  @
    SetAccessCommand(pLineCmdm,"CreateLine");
5 T$ j: N3 @& D        NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
" [7 u0 ?: `2 o' C1 G  ~        SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");9 D. u4 _9 y$ R! G( e
        9 D, U. i7 H8 R
        SetAccessChild(pPartBenchMun,pPartBenchSmu);
, X2 r8 m* N6 o; |8 o& F2 P    SetAccessChild(pPartBenchSmu,pPointCmdm);- B9 b/ y) A3 s$ e7 V# Y
        SetAccessNext(pPointCmdm,pLineCmdm); % |; Z7 x& L" N- N4 A# v2 w1 f+ o
    SetAccessNext(pLineCmdm,pDialogTestCmdm);
6 S5 Z$ x! G4 z( L- d# }3 r3 W( n7 ~" K8 Q- ]  d) }
    SetAddinMenu(pPartBenchTlb,pPartBenchMun);
( j6 U! B% @9 B% S/ i( m
* b7 z4 a/ P$ P2 N/ Q/ N) \# O6 f8 j, q, P$ [$ K7 n8 v. ]
2 C3 ~2 H# Z1 A/ k" ^
        return pPartBenchTlb;
0 Q* d6 \& d0 u8 l, C7 F
) `) Q0 `( f7 K  N3 R$ r}+ H0 ~3 N/ Y7 ^9 Z  I! h( ^6 l

, j! F) V" i, v3 O  F4 O8 M( ~
* l9 n1 p5 ]7 g# B4 F: E
上海点团信息科技有限公司,承接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里面设置 图标
$ w9 ]/ a& e8 s9 \: G' dPartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";
. h6 ^* j- @1 s- A# ePartCmdHeader.CreateLine.Icon.Normal    = "I_Line";. O* o# u. j% d# f% |& Z/ i
在PartCmdHeader.CATNls设置命令名称- o6 k1 x4 f& f$ D8 q
PartCmdHeader.CreatePoint.Title    = "创建点";, N8 `" i# g; t$ W, ]% v$ S# w
PartCmdHeader.CreatePoint.Mnemonic     = "P";
3 U8 ]' A1 q3 T1 x! t" ]2 J  OPartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
1 |0 v/ j$ Y' d$ vPartCmdHeader.CreatePoint.Help      = "创建点";
+ N- |6 _, m. s- O& vPartCmdHeader.CreateLine.Title    = "创建线";
( x6 x& R- h  }3 E- kPartCmdHeader.CreateLine.Mnemonic     = "L";, {# O5 P) F3 ^. A
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";
; `0 u8 H0 h# GPartCmdHeader.CreateLine.Help      = "创建线";
1 q, ]! z8 n2 h6 m: e& NPartCmdHeader.CreateDialogTest.Title    = "对话框测试";
: ?3 Z- ]) E- R6 N- LPartCmdHeader.CreateDialogTest.Mnemonic     = "C";3 \4 S8 q, Y! V& Z+ T  B) C
PartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";
2 ^" H( P' @$ PPartCmdHeader.CreateDialogTest.Help      = "对话框测试";& u2 Z: @" s. T! g/ a
上海点团信息科技有限公司,承接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里面设置 图标
6 t/ n) I7 Y' S" z. {9 r9 kPartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";
% ~8 Q- K# h7 {( l- PPartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
" d; F2 g' }2 N* Z5 n, ~! N# o  s8 b7 Z9 e' @/ j* D% x$ l$ v

2 U1 Z4 k1 t( A( e; e- j" C/ h+ G在PartCmdHeader.CATNls设置命令名称
$ g; Z+ Q, T0 c* o$ WPartCmdHeader.CreatePoint.Title    = "创建点";
1 m/ k* k5 B6 y" dPartCmdHeader.CreatePoint.Mnemonic     = "P";
1 a; s: k' }2 a' p7 Y! @# [PartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
3 K2 v# G& m' X8 B. V' I5 M% FPartCmdHeader.CreatePoint.Help      = "创建点";/ R8 T) s& t( c. a
PartCmdHeader.CreateLine.Title    = "创建线";
6 B8 j2 c; m% [9 L6 c/ yPartCmdHeader.CreateLine.Mnemonic     = "L";
2 T8 q. ?% X2 K6 C3 }  z- Q% kPartCmdHeader.CreateLine.ShortHelp = "快速创建线";) n6 j; m! y- r2 F
PartCmdHeader.CreateLine.Help      = "创建线";
0 Y) E: z% O; r( w( G0 h/ nPartCmdHeader.CreateDialogTest.Title    = "对话框测试";
: [5 V6 k6 B/ N8 Y( L( @PartCmdHeader.CreateDialogTest.Mnemonic     = "C";# C' [/ G: @7 z  L" }$ X0 x
PartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";
- \6 W5 W$ w; O1 J* n) @PartCmdHeader.CreateDialogTest.Help      = "对话框测试";* L5 }4 `% x3 ?. e( U4 D
* r7 t  L! S$ l+ z2 y1 B' n
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了