PLM之家PLMHome-国产软件践行者

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

  [复制链接]

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

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

admin 楼主

2017-4-19 21:39:20

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

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

x

$ T2 M1 d4 k6 ^% J" ~+ D0 W1 G$ I- D3 t/ h: H
Catia二次开发源码分享: 关于创建命令和菜单方法
! A1 B: c0 F- U" A- Y7 `5 W8 L" V8 s  g6 d
: f+ ?2 c' k5 i5 K4 F
$ l+ p" c; f9 S3 O$ L
//Methods implementation
% p3 L$ c0 U6 t
- a2 C" J# S7 N" Avoid myAddin::CreateCommands(); b. @2 U+ ]: w5 B, n# R
{. ]: L+ M, N6 Q$ D; U% q
        new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
4 U; K: C& t; z6 N1 Y        new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
  p6 Y( g* `9 y: u& \8 S. z, U        new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
7 u+ F7 \; S: H7 L}. @7 G. r1 x, W0 e% d, J
CATCmdContainer * myAddin::CreateToolbars(). W, |1 f+ v0 I% w6 n& ?8 M
{
& {  `3 f" F) S8 U( W1 ~) _7 c' @' b) [       
' T: g* S" K: y        //设置工具条$ p2 o* K+ W. }$ V; l4 n
        NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);" d. u7 o0 w2 o  y; F
   AddToolbarView(pPartBenchTlb,1,Right);
8 h3 {  L- U4 K6 B) l5 s( P" A4 y! F7 g, e1 I$ g- M' A, }
        NewAccess(CATCmdStarter,pPointCmd,PointCmd);
2 J3 L0 x# G- a, V. x7 E& N        SetAccessCommand(pPointCmd,"CreatePoint");
1 d$ ^8 X6 e: \" ?7 Q, b        SetAccessChild(pPartBenchTlb,pPointCmd);! g. z& S5 t+ v$ K
2 N( R' E- W& Z: k! |) x: T% }
        NewAccess(CATCmdStarter,pLineCmd,LineCmd);
5 n( g0 e  i2 n7 V7 w6 Y# b        SetAccessCommand(pLineCmd,"CreateLine");
1 b- U' P5 C9 B        SetAccessNext(pPointCmd,pLineCmd);
; }; I4 Z/ K! ]' O! x+ U# U; l5 v" {8 d
+ [% z$ K3 {0 U* V, p2 J        NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);/ Q' N1 b; ]/ b' m- L8 V# n
        SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
9 Z5 D$ t6 g* v0 e        SetAccessNext(pLineCmd,pDialogTestCmd);
4 g( z7 B- P9 O$ X; M0 u: F1 r
1 P8 b' e4 B* [% O       
8 l$ A0 R; S; A        //设置菜单; @( T) v7 |( d& ^6 V0 t. L

  y  t( w' @# {. I! |2 u0 Y$ o        NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
( `  w' V1 m: i% T1 u        NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);
4 T  a1 G0 h; q        NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);* B+ |; ?  i% j+ @" o
        SetAccessCommand(pPointCmdm,"CreatePoint");  {& |- s" \9 z/ G* `% d
    NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
3 P0 G& a/ b- l0 }    SetAccessCommand(pLineCmdm,"CreateLine");
; R5 C5 [. K" G$ G        NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
7 {; S1 o7 Y* h4 A: `        SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");
6 g$ ]& [" z. n       
: m. b% K# F: l5 m) E) N* v$ o! u        SetAccessChild(pPartBenchMun,pPartBenchSmu);
% z3 Z7 V0 y0 J    SetAccessChild(pPartBenchSmu,pPointCmdm);
" ], W" X6 p# M% h        SetAccessNext(pPointCmdm,pLineCmdm); 0 j- [( p7 q: R% n- D
    SetAccessNext(pLineCmdm,pDialogTestCmdm); 6 E; S0 l) t9 n" s
! o# y/ b# Y1 a3 ~
    SetAddinMenu(pPartBenchTlb,pPartBenchMun);
# H/ J9 y  Q* h$ _/ P+ ^/ E" z- W$ D. `; ~% ?, {* m

0 L# G! T. Z1 C5 u6 s8 w1 ~! V& \5 r4 b" O6 r  V9 e5 h' i2 p) s
        return pPartBenchTlb;- U+ g" n! z. H' ^0 H
  c8 C5 O; m+ A) W( ]% F6 L. p% ~& r
}
2 T/ j- }6 O+ ~5 M" V, j& h
( w- ^, f  T9 _0 J
2 ^/ {$ ?7 j* [% _' D* @! G
上海点团信息科技有限公司,承接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里面设置 图标 & x* C. X4 J/ H! E
PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";
4 H+ _1 w1 ?" i3 W3 Y3 |# i$ VPartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
& s; _  _( B. o7 ~0 [& H% S在PartCmdHeader.CATNls设置命令名称
. c* \, j. b5 l, a4 x3 J4 DPartCmdHeader.CreatePoint.Title    = "创建点";
8 m. ~- L: N: {4 R% A7 X* Z$ CPartCmdHeader.CreatePoint.Mnemonic     = "P";' n/ d7 }8 P8 A0 K# b. r4 s' m
PartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
3 k" O4 G  h* ?  r8 |) B4 V: mPartCmdHeader.CreatePoint.Help      = "创建点";
/ ?+ ]1 Q! n% P8 OPartCmdHeader.CreateLine.Title    = "创建线";, P5 e- l9 {  W$ \6 N' S7 b% Y8 L
PartCmdHeader.CreateLine.Mnemonic     = "L";6 j' e+ ^9 C8 H6 O: P: G
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";4 K+ t4 {$ s$ M
PartCmdHeader.CreateLine.Help      = "创建线";
) j! z6 E  H) I" |& T: Z/ H  h% aPartCmdHeader.CreateDialogTest.Title    = "对话框测试";
( i2 @0 Y$ ?, b( s8 R/ W  gPartCmdHeader.CreateDialogTest.Mnemonic     = "C";
3 C9 g% w/ R3 c* h( nPartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";
. \8 s. }1 V2 Y/ ^7 |  [" wPartCmdHeader.CreateDialogTest.Help      = "对话框测试";
9 A# h" P  w  M. U
上海点团信息科技有限公司,承接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里面设置 图标 % O- ]0 @1 @: T8 t3 l# x
PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";- S: N6 Q' ~0 ^+ H9 }6 \& Z* B
PartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
8 q3 e& N, P7 e5 S4 S7 l  l. Z/ [3 G5 |7 e

* D1 _3 a3 A: O, R/ W* b在PartCmdHeader.CATNls设置命令名称
9 ^4 R6 }" Z6 D* C9 OPartCmdHeader.CreatePoint.Title    = "创建点";
  i8 m% |/ I. v. F1 L* _9 WPartCmdHeader.CreatePoint.Mnemonic     = "P";
( U( u9 B* i5 W) ^PartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
: H5 Y% d8 s% P& DPartCmdHeader.CreatePoint.Help      = "创建点";, L, `6 h) C6 u+ u6 f2 P! M; F  J
PartCmdHeader.CreateLine.Title    = "创建线";% `, r+ q$ I% Y) v
PartCmdHeader.CreateLine.Mnemonic     = "L";0 ?- Z7 M8 i* O! i
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";
8 x/ n- j. r6 F9 R9 Q% ~8 A/ \PartCmdHeader.CreateLine.Help      = "创建线";
  ]( H4 ^1 {6 G1 ?2 A2 c$ l- LPartCmdHeader.CreateDialogTest.Title    = "对话框测试";
: t) u" p/ c" |0 d. _PartCmdHeader.CreateDialogTest.Mnemonic     = "C";: e* F5 M- }3 K- ~. a! N+ H6 R9 S6 T
PartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";7 V- _! _* D3 H" X( N: C7 O5 D% f1 v
PartCmdHeader.CreateDialogTest.Help      = "对话框测试";
+ Z# y' k$ C2 P
: [0 l" {, e3 Q
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了