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

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

  [复制链接]

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

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

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

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

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

x

+ ]& i" m) [* L3 m* M
# }! N2 @/ h, u3 ICatia二次开发源码分享: 关于创建命令和菜单方法* U2 s9 H* ^, Y8 x1 v/ N

/ n9 q+ x+ Z; F  I' L* d# O* V6 N: L9 d( C$ L2 ~4 s5 x: @
' {2 ?6 p; x& Z( \; b" A
//Methods implementation
# S! R: @4 `- c* O9 i3 Q# U
5 \- o: [5 v& s" ]5 z# w! Avoid myAddin::CreateCommands()4 R% K3 H2 G" f4 U) C3 |* T
{
- k: ?! i! T! I) b0 e: |) O$ ^        new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
& {( o1 l$ \  p0 H- V: N) w        new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
9 j1 @7 i" @% a        new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
7 p8 n, n; {/ |0 W}4 R/ K( V3 }, v- o* f' ]3 b
CATCmdContainer * myAddin::CreateToolbars()
% {- T1 G% K6 U9 `' c& w# v- g{
: a# r* e4 v4 ?+ {) H$ ~! M8 [/ R       
* u/ u/ Q  ?5 W" R+ B! M* w1 l2 D        //设置工具条
2 R5 u  R4 ?$ c7 k7 E$ _        NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);
: ^# f+ |4 s% z; ]6 f1 _" W   AddToolbarView(pPartBenchTlb,1,Right);/ F( x! B3 R6 j, m3 G. D
( K0 [) ^+ E' h
        NewAccess(CATCmdStarter,pPointCmd,PointCmd);
5 L3 n: y8 f  h9 u0 M' l4 y        SetAccessCommand(pPointCmd,"CreatePoint");* e0 C  h' M, n% H6 p2 [7 r
        SetAccessChild(pPartBenchTlb,pPointCmd);0 D3 W1 ?  K0 Q$ k% N8 k6 e! X

% N: d! q; t- ]) Y        NewAccess(CATCmdStarter,pLineCmd,LineCmd);. s/ @& x' Z9 _9 b
        SetAccessCommand(pLineCmd,"CreateLine");
/ V3 F- }4 E1 B1 `6 Q, k2 l        SetAccessNext(pPointCmd,pLineCmd); . a5 Z/ w; A8 R( b$ _5 z

# s  ~+ w, [: _! t        NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
; R+ ]4 {6 r" o% M: L- R$ A' R        SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
2 m, y2 [0 o6 h1 z        SetAccessNext(pLineCmd,pDialogTestCmd);
8 }# _8 u) q4 z% U2 P4 B' z9 g3 u3 o0 m5 T
       
  V# c- Q6 q7 \0 o        //设置菜单) |9 w) c( f. ^' d8 \

, g. a! G( r% v  y( _1 X        NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);# I. J; N0 ]- I8 w$ j
        NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);
9 V7 V+ C. ?# K! v9 X% U; K7 a        NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);
* \1 T7 x0 {9 Y6 C        SetAccessCommand(pPointCmdm,"CreatePoint");
. ]- |: @8 q4 s* |    NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);! n0 V) e5 a0 l
    SetAccessCommand(pLineCmdm,"CreateLine");$ U8 g; u/ q. d( L# d& T
        NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
8 ], ~8 M4 ?% A- K) y* }4 q- `        SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");3 P1 X. f# o7 o
        7 y6 \3 J/ ?2 Q$ M1 F" y9 J
        SetAccessChild(pPartBenchMun,pPartBenchSmu);
6 a- i# H2 u$ Z& ?$ c    SetAccessChild(pPartBenchSmu,pPointCmdm);
+ u) W% \) i$ @* H. K* M        SetAccessNext(pPointCmdm,pLineCmdm); / g, e9 q; q7 k- Y: O
    SetAccessNext(pLineCmdm,pDialogTestCmdm); $ q, {( h. e, R7 `
! d( ?, y( d8 v$ B) m  d
    SetAddinMenu(pPartBenchTlb,pPartBenchMun);, T+ d9 I5 a( H8 i) N$ s+ ?
8 N1 X0 {4 x. r
! R& K; m" T  r, H

2 m* P0 z3 C% J1 r        return pPartBenchTlb;2 w1 R5 U2 X' ?+ }# H2 D. C
' d. L0 a  V& m3 G0 a" `, C4 O  T
}
: c0 s0 Q, v7 z6 k1 H' g. }! s0 w/ B% C" x3 f

$ y- m- v8 P. V- l5 z- g* x$ H
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复4

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

积分
82166
QQ
 楼主| 发表于 2017-4-19 21:41:17 | 显示全部楼层
在 header文件CATRsc里面设置 图标 . L8 P9 {! w5 m9 `3 M( Q3 S$ @
PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";
0 l0 p( v; W; z& W' SPartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
2 @. }) \: R7 P$ B/ G. W5 C在PartCmdHeader.CATNls设置命令名称' ?- A% L  O) f# e$ z& _7 G
PartCmdHeader.CreatePoint.Title    = "创建点";
; |: _  g, h$ w! l9 oPartCmdHeader.CreatePoint.Mnemonic     = "P";
' \  z! Y) R$ I& ~6 F: P) }PartCmdHeader.CreatePoint.ShortHelp = "快速创建点";# p' T/ m5 z. {: `" E0 j
PartCmdHeader.CreatePoint.Help      = "创建点";/ [5 l' X- a6 ~8 K+ f
PartCmdHeader.CreateLine.Title    = "创建线";3 F  V! `# v% F6 u! }
PartCmdHeader.CreateLine.Mnemonic     = "L";; y+ v. C* g' L% ?% g$ _
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";
0 N) ?. s% s$ a# {, w; y/ D7 `PartCmdHeader.CreateLine.Help      = "创建线";0 Y& @' w+ B9 h" o  p5 a
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";- V" W1 X* G2 l% T8 b
PartCmdHeader.CreateDialogTest.Mnemonic     = "C";
& O' m$ e. ]1 M  x% e: MPartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";
+ H# Y1 F5 Q" r0 s. IPartCmdHeader.CreateDialogTest.Help      = "对话框测试";* a# V0 Q9 L; R" X: h) s
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

积分
82166
QQ
 楼主| 发表于 2017-4-19 21:41:31 | 显示全部楼层
在 header文件CATRsc里面设置 图标 9 s( a- }+ ]1 M5 q$ y
PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";
& l- ^7 o% N! IPartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
, j  C; ]2 M: ]) g! _9 W+ r. \  ?' a: X
3 I% n$ a5 S/ @. w; `1 B5 K2 B
8 z; N) g0 y$ e5 P: n! W0 J+ L& v在PartCmdHeader.CATNls设置命令名称/ ~0 f% s& `1 y1 J0 Y. }" e
PartCmdHeader.CreatePoint.Title    = "创建点";# U$ R' V6 ?2 t5 q' A
PartCmdHeader.CreatePoint.Mnemonic     = "P";  Y1 X- Y, u, e- E# c: v" M2 K$ A
PartCmdHeader.CreatePoint.ShortHelp = "快速创建点";  U& R9 _% J1 D) a% V
PartCmdHeader.CreatePoint.Help      = "创建点";
' `7 [& n3 t6 H( JPartCmdHeader.CreateLine.Title    = "创建线";
' T# G) \. R7 GPartCmdHeader.CreateLine.Mnemonic     = "L";) V/ y+ `5 z+ B7 A' d4 U6 u# }2 P
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";
0 u. @/ F( ^/ K& D6 y: qPartCmdHeader.CreateLine.Help      = "创建线";& s9 g* \& l, r! |/ m* M7 E
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";$ D7 g7 _9 X6 ~/ N4 E) e- {. E- S
PartCmdHeader.CreateDialogTest.Mnemonic     = "C";
" B) @) a' T7 ?; PPartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";
/ h, l/ t; w( `! |  WPartCmdHeader.CreateDialogTest.Help      = "对话框测试";% _/ u8 k8 M; d, B- u0 A- }
* ~! ^2 c3 D2 ^2 y$ r8 b( ]! z
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了