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

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

  [复制链接]

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

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

admin 楼主

2017-4-19 21:39:20

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

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

x
1 `9 z, m! b! c$ K

( V' e, U) d: v7 eCatia二次开发源码分享: 关于创建命令和菜单方法. n$ I0 i) k7 n! r3 B6 \
+ q: J( r* N4 m0 z7 ^
0 U- Y7 R5 F/ N! X

/ d8 t' _) [/ O//Methods implementation
: _! w$ J. s# T1 y) z' _7 W
' G' T( w5 V6 ], Pvoid myAddin::CreateCommands()) e) e# e+ e% Z8 k
{; c, }: E" l7 b! b' m9 `
        new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
% _9 v+ c2 F- {7 N; L( [        new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
" r1 W9 G. S: i) @) J$ b* d, a        new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
' a. G% H1 z+ H# f}" J. `/ W6 Y& h' [/ S' K+ M
CATCmdContainer * myAddin::CreateToolbars()
" s" i7 t$ t" f0 S- H0 {{
2 E( `2 u7 i6 m  }. z+ i/ A       
5 [, R8 G; U4 e        //设置工具条# N3 H9 U$ N& Z7 c) t7 R
        NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);9 |: o4 Q% \. _  v0 h  p( g
   AddToolbarView(pPartBenchTlb,1,Right);
" S; j0 X) i7 X# t( u% @
2 o5 ~8 R/ i% q/ ]1 @8 c" C        NewAccess(CATCmdStarter,pPointCmd,PointCmd);
/ A7 [9 v* b0 O3 v        SetAccessCommand(pPointCmd,"CreatePoint");
4 Y# b6 u2 w8 C4 W: J9 r        SetAccessChild(pPartBenchTlb,pPointCmd);
, o! H. S2 W2 x$ O+ l% @% p: I5 L9 N+ D- ?' [
        NewAccess(CATCmdStarter,pLineCmd,LineCmd);
# b8 H, \, M# ?        SetAccessCommand(pLineCmd,"CreateLine");
, H$ M8 F5 A# M& v        SetAccessNext(pPointCmd,pLineCmd);
, Z# K/ J0 y( h6 v, ]6 D2 S' \' H! ^9 }3 J' X/ p! J2 n
        NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
6 w. o7 N) U" _' Z1 X        SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
) F6 a) q- C2 l- y; H. q- L        SetAccessNext(pLineCmd,pDialogTestCmd); ; k, G% ~1 K6 b2 H  h

; h$ I- Q; H! N9 y9 {       
6 q/ \" y0 j0 U( f- F6 \  Q- k        //设置菜单; p& u7 U/ N+ o3 C
  o3 z/ |0 m5 `' a' A1 u  }
        NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
6 j# I" s) a/ J8 Y        NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);. r- F2 T% D7 k* f
        NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);  N& f) h" Q8 G. d- ^; q
        SetAccessCommand(pPointCmdm,"CreatePoint");4 [+ G  X7 q. j9 ]& \' A, a* Y
    NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
) X# ~1 h+ M8 q4 @9 r    SetAccessCommand(pLineCmdm,"CreateLine");
* V/ {4 V. c7 [4 l# p) l        NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);1 I# Y( r% D% U5 W+ }. Z5 C
        SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");2 x9 W+ T' x# d8 n& o  R
        : B% F6 p8 o& r0 {; t0 r
        SetAccessChild(pPartBenchMun,pPartBenchSmu);
9 q, r( m, `5 Y& v5 h9 i6 x# S8 o    SetAccessChild(pPartBenchSmu,pPointCmdm);* i) X) U1 a2 V
        SetAccessNext(pPointCmdm,pLineCmdm); / V# |1 m2 j2 @7 O0 ]5 Z
    SetAccessNext(pLineCmdm,pDialogTestCmdm);
: j2 G  `+ i" w1 ]1 u5 G  e
: R7 s- C0 d/ X  p, a6 I# n* x- B    SetAddinMenu(pPartBenchTlb,pPartBenchMun);
+ U9 D7 P  V4 f; Y1 e6 b. {. j  P8 }6 E* g# j/ Y. V

0 w# _* \  t: ^( ~0 H* d, v- q) t0 j' o6 i
        return pPartBenchTlb;
0 r6 m+ |" U# T0 M' G
" A3 J5 K) x4 f. f' q1 J}0 F0 K6 O; H4 }
& D: R2 a0 ^! }: o! V: G% N1 n

/ A0 H! s8 \; f, ]3 u
上海点团信息科技有限公司,承接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里面设置 图标
$ h+ j4 B1 l  N. l% i' B) uPartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";
5 p6 T2 W) V& G' nPartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
. C) n, ^5 R4 X$ F! Z在PartCmdHeader.CATNls设置命令名称/ U& i0 R5 s! t6 f* ?" p
PartCmdHeader.CreatePoint.Title    = "创建点";. K! j( F9 a) Q/ B' h
PartCmdHeader.CreatePoint.Mnemonic     = "P";
) S* t! e) b* P0 p& wPartCmdHeader.CreatePoint.ShortHelp = "快速创建点";+ y0 x' d2 R: U2 m
PartCmdHeader.CreatePoint.Help      = "创建点";. A# x) ]+ ^. Y* `6 x0 p
PartCmdHeader.CreateLine.Title    = "创建线";) b. R8 D4 w! \3 e9 E
PartCmdHeader.CreateLine.Mnemonic     = "L";/ y& h4 _) G: V' ^1 A
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";
5 ?: f8 h, D" b* p* F4 zPartCmdHeader.CreateLine.Help      = "创建线";; r* E8 }1 G- P8 b% z6 q
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";
, a6 |; t3 |3 Z- aPartCmdHeader.CreateDialogTest.Mnemonic     = "C";
. `4 p4 I% F- ?+ U& V* {# cPartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";+ y2 ^! V2 ~. g. I* Z1 U  g- I0 U
PartCmdHeader.CreateDialogTest.Help      = "对话框测试";
; j, ?& e6 |* ]( X0 b! _
上海点团信息科技有限公司,承接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里面设置 图标 . l$ w+ z' G+ N( t& Z; k
PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";
) E1 Z7 V" e* I4 n: x1 YPartCmdHeader.CreateLine.Icon.Normal    = "I_Line";) V) N' _3 m$ a+ E$ L3 }" w- R4 L

8 b4 ]2 O* z7 u- U
. d! @/ b3 ?6 z0 u4 S在PartCmdHeader.CATNls设置命令名称
2 B0 y; M) |" OPartCmdHeader.CreatePoint.Title    = "创建点";
1 C0 n% i- [0 T' `0 O; D2 lPartCmdHeader.CreatePoint.Mnemonic     = "P";' Q" E; K  x& d, C- m/ T+ i7 U
PartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
7 X9 w$ I& I5 k0 L- j+ p4 LPartCmdHeader.CreatePoint.Help      = "创建点";; J; o- R' X& T* |+ H( j: O! {2 f
PartCmdHeader.CreateLine.Title    = "创建线";; i. A$ d* c8 l2 F4 [
PartCmdHeader.CreateLine.Mnemonic     = "L";
+ \( C- u; g% G) L# }& xPartCmdHeader.CreateLine.ShortHelp = "快速创建线";
0 s8 c. G) i# `- ]9 p9 yPartCmdHeader.CreateLine.Help      = "创建线";
- w) }5 r& S# a* ?PartCmdHeader.CreateDialogTest.Title    = "对话框测试";
, \8 J9 {: R" Z/ Y+ r! b  M/ BPartCmdHeader.CreateDialogTest.Mnemonic     = "C";
6 Y) z! W' E  j; `PartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";
" e4 c1 i: _$ L  e% l: [$ DPartCmdHeader.CreateDialogTest.Help      = "对话框测试";, P* [( i  B9 _+ h: j3 g4 H4 K1 E
& K2 }- z" N/ o  H# K: o
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了