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

[资料] CATIA二次开发入门教程---12 为自定义的工作台添加菜单工具条

[复制链接]

2017-1-20 00:17:03 6397 0

admin 发表于 2017-1-20 00:17:03 |阅读模式

admin 楼主

2017-1-20 00:17:03

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

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

x
CATIA二次开发入门教程---12 为自定义的工作台添加菜单工具条
) V1 O6 p. M: x3 K- g
% b' P( q/ X: y) z$ V6 p7 Y
" i, l0 I8 e. _. P1 W
前面已经创建了工作台myWorkbench和在零件设计中添加了PLM之家智能设计的工具条和菜单,那么接下来如何在自己建的工作台上添加呢?# V( W8 c& ^/ R" G# }
做法和前面类似,打开workshop.h文件,直接输入:
2 h/ K1 Y1 K, o1 g* v
5 E) W/ N! p! l. l

" [4 c/ b& x! b/ ~3 l) @4 A& ONewAccess(CATCmdWorkbench,CATCmdWorkbench1,myWorkbenchWkb);+ \% X5 v# F+ ?7 Q
SetWorkbenchPriority (CATCmdWorkbench1, 25);
5 {# A! C2 D$ y% _" B/ u1 b
NewAccess(CATCmdContainer,CATCmdContainer1,NewToolBar001Tlb);. m! V- [( i3 t! `4 ?  B, h4 P

: Z2 S) s% `. q2 F! Q//设置工具条
: ]7 x% Y: j* \2 O. D2 ^
, b) J" o4 X+ n7 l7 A

6 D6 P1 w7 \: B: c$ INewAccess(CATCmdStarter,pPointCmd,PointCmd);
/ U7 g" ?, f+ n- e- FSetAccessCommand(pPointCmd,"CreatePoint");
8 z! s7 L: ?, A' L+ Z/ RSetAccessChild(CATCmdContainer1,pPointCmd);/ |# m! ?; t4 N( m/ w
NewAccess(CATCmdStarter,pLineCmd,LineCmd);, I# M" e% }/ g4 L% m) g
SetAccessCommand(pLineCmd,"CreateLine");8 ]5 k7 z! \/ F& e. `
SetAccessNext(pPointCmd,pLineCmd); 6 o4 C' z6 w% {
AddToolbarView(CATCmdContainer1,1,Right);6 n" M' c: q) p, _* {, s  r1 n
SetAccessChild(CATCmdWorkbench1,CATCmdContainer1);
$ o  ?( z# g, O! K; R0 F//设置菜单
' L( @/ y1 t$ JNewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);; `8 G$ V6 e8 y$ E2 m7 j' b
NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);0 T4 h6 Z$ K# {8 _( j2 r# q
NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);  y( h+ p, A. x
SetAccessCommand(pPointCmdm,"CreatePoint");
& Q: t1 `4 @" l& |& TNewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
6 e9 F  A1 c! q& n0 B* LSetAccessCommand(pLineCmdm,"CreateLine");& M4 _) X3 H- T$ O  D, }
SetAccessChild(pPartBenchMun,pPartBenchSmu);
4 b! O* F' e2 Q* P. V0 G! n7 k- }SetAccessChild(pPartBenchSmu,pPointCmdm);
+ g* d6 r# }9 Y6 r5 i2 JSetAccessNext(pPointCmdm,pLineCmdm); 7 y* O8 b% g% e% q. @, W
SetWorkbenchMenu(CATCmdWorkbench1,pPartBenchMun);# k1 ]5 p+ I, U* S

% h5 Z+ r1 ^& ^+ Q: M1 ~& Ireturn CATCmdWorkbench1;
) Q. Q0 D5 T1 ^: w9 i* F4 |
% B0 K# q9 }5 W( D) O( r) [! T9 t& B
注意这段代码和前面很类似,另外在headers.h中输入2 P* N( H/ Q- v- A' q
) _2 p( c) ]) D4 }2 [: g" p

' y5 a2 G6 Z1 Z4 b7 {* ]% znew myWorkbenchCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
" J1 n  S4 M/ {0 B( c  [8 enew myWorkbenchCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);7 R; u& l# x* u4 @6 [

: j. o. e: p0 ?. S
8 q2 C2 D( B+ P' j' v7 B2 M! G2 C& |实际上现在编译的话,菜单和工具条都有啦,现在加入图片和自定义菜单名称,做法和前面一样& Q+ O6 w8 t- Z$ d
myWorkbenchCmdHeader.CATNls 中输入
" s8 r3 G2 j4 W# }! o+ [. S2 `4 ~+ @) p* d! E" s' r
myWorkbenchCmdHeader.CreatePoint.Title    = "创建点";3 |- M- p# h0 V% r& C
myWorkbenchCmdHeader.CreatePoint.Mnemonic     = "P";
/ K, ~- B3 @+ z! TmyWorkbenchCmdHeader.CreatePoint.ShortHelp = "快速创建点";
4 C3 _' D0 T. n# L9 O2 @( ?6 h% FmyWorkbenchCmdHeader.CreatePoint.Help      = "创建点";
5 O$ u/ Y9 v& x! g0 r3 x" \) ImyWorkbenchCmdHeader.CreateLine.Title    = "创建线";
. C" k1 z8 _- fmyWorkbenchCmdHeader.CreateLine.Mnemonic     = "L";
4 E" c" n. T) c6 B  U; A$ O, jmyWorkbenchCmdHeader.CreateLine.ShortHelp = "快速创建线";) p+ N2 I4 G* ~9 I. M; w+ y8 n
myWorkbenchCmdHeader.CreateLine.Help      = "创建线";  ~4 g& l% ]' H9 r
  L$ L) S/ ]) O. ?% K
& d* \( \# P' P* Q
myWorkbenchCmdHeader.CATRsc 中输入
' ?8 v6 M) E# O2 F$ W
3 v! D: ?- t% w% [* ~: umyWorkbenchCmdHeader.CreatePoint.Icon.Normal    = "I_Point";: E( B% i4 ~, a9 u) \  W
myWorkbenchCmdHeader.CreateLine.Icon.Normal    = "I_Line";
* ^+ S3 M6 E7 m  v8 D9 t( j, T1 a
5 D- P8 d" D# g0 ]* r2 NmyWorkbench.CATNls 中输入:, [8 Y; a3 ^7 X5 F; r1 d
myWorkbench.Title="PLM之家智能设计";* n* p/ v" F. G: R. ]# ?$ T$ F
myWorkbench.ShortHelp  = "PLM之家智能设计工具集";- I' Z" l8 I) r: A, [: s' q- \
myWorkbench.Help       = "PLM之家智能设计,智能设计模块";$ J; ]3 z2 t$ m+ y
myWorkbench.LongHelp   = "PLM之家智能设计是基于catia系统开发的一套快速智能设计模块";
0 ^" [. C+ {2 @) K; Q
- _1 k9 t; H) w' E" mNewToolBar001Tlb.Title = "PLM之家智能设计";
$ \! ?1 T1 u4 t2 ^% A( C6 h* }5 {PartBenchSmu.Title="PLM之家智能设计";
& t0 E) ]! {1 o( U5 j8 K5 pPartBenchSmu.Mnemonic     = "P";2 n4 _" |' u) e; r/ d
4 i, Q, B9 b5 a3 c7 H- l9 a

" p, C- n% Z. R* D# T结果如下:) k4 [9 T. q& W# `, S
( b2 n( P2 s' i* O2 R4 y

* @9 S8 M# w! S  z. z 无标题.png , P% o' m+ v. f  I
. H9 M- h! ~- ]  w- m5 Q! p0 h9 `

9 Y' ]4 H- E! `) g8 D$ M. ~3 c$ p4 N1 m+ |; n$ J* M

$ N3 g, q: `+ g
# D& w; y. `# q5 L2 t
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了