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

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

  [复制链接]

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

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

admin 楼主

2017-4-19 21:39:20

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

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

x

/ w0 H9 U: M0 S# z6 p, E# V: O
2 i) U9 D) p# M3 T3 K. G- B' qCatia二次开发源码分享: 关于创建命令和菜单方法
+ ]. X0 s# P$ y# T' o1 N/ q3 W, h# L! K# g

" \+ ^  a, V: r% d. _; G, R& H/ y! A. G8 N: y- q
//Methods implementation
6 n6 p. j3 u; y2 G# l% K. g% P+ v# I* v  m( I
void myAddin::CreateCommands(). L* S' }3 J: _' q& [: m6 g
{
' j% R6 Q9 G% ]4 G% y        new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
& J' L& t* ~: f        new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
/ @* }2 W% B& \! x$ N5 J* `        new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);. h. N2 E' q: S2 p
}
2 P; f6 V7 y1 j" cCATCmdContainer * myAddin::CreateToolbars()1 D1 m$ g! b' P, ~6 u" ^: B1 i
{4 ^  {) D& S) o& J- v+ Q
        / }6 Y6 C* F3 i7 p; y( }
        //设置工具条
' V* ?& O8 P; P/ @7 y8 v9 ]$ n0 c        NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);, L$ q4 d% ^8 e! S$ P1 {
   AddToolbarView(pPartBenchTlb,1,Right);+ @* r# s% C. {  K& q4 E/ Z

- X  v. W( O; P& ?! v        NewAccess(CATCmdStarter,pPointCmd,PointCmd);2 W. `" ^+ X, G2 s+ ~' f. e3 s  N
        SetAccessCommand(pPointCmd,"CreatePoint");
! i  ~' R/ Z, ^3 |* _* L        SetAccessChild(pPartBenchTlb,pPointCmd);/ F; ^4 S8 B4 z( r7 J* O, |
# Y# z* p! C( \& y1 w+ H
        NewAccess(CATCmdStarter,pLineCmd,LineCmd);+ c" E* l7 H8 [1 }
        SetAccessCommand(pLineCmd,"CreateLine");; p' X  Q# I, B& f" e7 U1 o
        SetAccessNext(pPointCmd,pLineCmd);
% i' p4 X# N! |1 [2 N9 G; ^
6 v* t. {9 Y  f) W        NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
. p# s2 C3 w( `9 T% C- b        SetAccessCommand(pDialogTestCmd,"CreateDialogTest");% k. i. L% u$ m& f
        SetAccessNext(pLineCmd,pDialogTestCmd); 7 N3 C8 J3 j. }$ K' |9 D! C

! I2 K, B; J& q& B+ D7 c: D        4 [( [9 o( n- x2 Y
        //设置菜单3 t1 P1 V( n. y+ z- G
2 ]# t! }& v& E' ?) n3 j' L( c
        NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);" M& g; d1 f1 a' l2 J
        NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);
8 m0 H  w# s0 P9 t1 W* A; {        NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);8 O- ^+ B" E% f  S3 s- w
        SetAccessCommand(pPointCmdm,"CreatePoint");
) J* `) O& e6 |8 f! W1 J/ f! @    NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
# Q% K! ^1 c4 m# o+ u    SetAccessCommand(pLineCmdm,"CreateLine");
: X$ p2 z) E+ x, W- r        NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
  M! d0 D3 h# y4 ^9 x# n        SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");. ~- Q: E* O" H1 B9 @+ m
       
  S, w% D2 _6 P        SetAccessChild(pPartBenchMun,pPartBenchSmu);
) a' N0 z# d1 `/ G; G& ^    SetAccessChild(pPartBenchSmu,pPointCmdm);; {2 ~# G$ Z1 J+ j) ^" N8 n( d
        SetAccessNext(pPointCmdm,pLineCmdm); 5 E$ Z; r. w9 g1 _) o' I
    SetAccessNext(pLineCmdm,pDialogTestCmdm);
& w& u" n7 ~4 A7 I3 D' k$ d, {* z! ^
    SetAddinMenu(pPartBenchTlb,pPartBenchMun);8 t4 a4 w9 E/ p

" ?& o5 ^! W( S8 K
7 v, ?% t5 ]# _1 f' o6 h" I
9 i3 `* e" ?1 i" J. g        return pPartBenchTlb;
' C  k3 I( ^' E, C# A' x+ H
  D% Y" E$ q1 F8 J0 O}! E5 j, k/ S: g" W
3 M- q$ G5 l  G: s" m6 M
4 u% C' G- q1 k  r
上海点团信息科技有限公司,承接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里面设置 图标   ^- S) j" N$ {) U; U0 d$ M$ y7 P4 F8 Z
PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";3 G* d: G' l* n. B1 A7 i5 G9 G& C
PartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
1 g) m. ^( q8 }1 ~4 p7 D在PartCmdHeader.CATNls设置命令名称4 l" t0 V; ~& O& K( h& t
PartCmdHeader.CreatePoint.Title    = "创建点";
9 V6 A1 y  h/ e; O8 S9 a5 v7 HPartCmdHeader.CreatePoint.Mnemonic     = "P";
! J4 v0 b5 R! R6 X! ?6 E! K7 `8 sPartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
# K5 f- W3 R: B# W# Z5 TPartCmdHeader.CreatePoint.Help      = "创建点";
& u" d; c' q$ e: I1 |! u' ^PartCmdHeader.CreateLine.Title    = "创建线";" U: i7 i8 R0 I; Z: R
PartCmdHeader.CreateLine.Mnemonic     = "L";/ Q5 ?) M) c5 H" ?  K+ p
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";
9 i- [, F  T  \( UPartCmdHeader.CreateLine.Help      = "创建线";% }0 t  J; @& }$ B3 F( }6 ~
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";8 V" @) a8 |! ?" C7 X8 A( S$ E
PartCmdHeader.CreateDialogTest.Mnemonic     = "C";
& E, _. G8 L& g# B, d7 x% @( f2 m3 ]PartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";) M, U, R; ?& ^/ [1 g0 Q* C. I4 s
PartCmdHeader.CreateDialogTest.Help      = "对话框测试";4 o& Q. _% Y# O6 D  [
上海点团信息科技有限公司,承接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里面设置 图标
7 j  o7 t& f$ b5 _  {# K' [( TPartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";) v# x: B* X5 ^* L$ p
PartCmdHeader.CreateLine.Icon.Normal    = "I_Line";) u. j! }- |, z3 _) n1 o9 F. a% q
8 h6 f5 [7 v( _5 f0 u

+ D! Q, |! H" Z; l" g在PartCmdHeader.CATNls设置命令名称
  [4 [" T9 Q: x; F1 s2 F9 TPartCmdHeader.CreatePoint.Title    = "创建点";) T# _: C3 Y' U) f0 P8 {( s
PartCmdHeader.CreatePoint.Mnemonic     = "P";
3 g3 F4 w' e% H2 L# VPartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
# a. _% F; ^/ z) `- O% VPartCmdHeader.CreatePoint.Help      = "创建点";0 K( o+ o& }0 i1 Q( H& _& I
PartCmdHeader.CreateLine.Title    = "创建线";
' |# |! q# l# w( kPartCmdHeader.CreateLine.Mnemonic     = "L";$ F' a1 L: ~& i" }' B$ d5 ]; u: `
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";
. }7 g6 Z8 K6 y8 j( I& ^PartCmdHeader.CreateLine.Help      = "创建线";
, c- H* j$ w; zPartCmdHeader.CreateDialogTest.Title    = "对话框测试";8 m. e: }& b3 O% b
PartCmdHeader.CreateDialogTest.Mnemonic     = "C";
0 @# u9 D& X1 ZPartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";9 f1 n. ~' N# V' S. K% f5 W! A4 F9 ^
PartCmdHeader.CreateDialogTest.Help      = "对话框测试";
& }) k! ^8 f. j/ L- F5 W' w( q* g- O# \) H5 Z$ W
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了