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

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

[复制链接]

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

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

admin 楼主

2017-1-20 00:17:03

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

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

x
CATIA二次开发入门教程---12 为自定义的工作台添加菜单工具条
# H4 N  E+ o) w9 _3 Q. C- Q+ I% x
/ T2 S9 Q1 S) [0 q: i8 k
8 @0 k5 i2 t% l, @. p
前面已经创建了工作台myWorkbench和在零件设计中添加了PLM之家智能设计的工具条和菜单,那么接下来如何在自己建的工作台上添加呢?! z& m8 }8 u) R  z; }. J
做法和前面类似,打开workshop.h文件,直接输入:
/ o; [  n% C3 q8 J) Z' b/ h9 \8 Y$ x6 |2 F  k, n( g7 a. k

1 D" j5 t4 [( ?/ n  [NewAccess(CATCmdWorkbench,CATCmdWorkbench1,myWorkbenchWkb);6 s( `' \+ T( }0 S8 v
SetWorkbenchPriority (CATCmdWorkbench1, 25);
6 Z6 U( b; q) R' Z# K3 D- u9 m
NewAccess(CATCmdContainer,CATCmdContainer1,NewToolBar001Tlb);
7 j1 h! M& ^$ ~; z
# r; e. b* @% Y! v7 q7 K7 u//设置工具条
2 i  j4 D$ @6 J: K

9 v* O# w' ^0 s- P' Z  b" q7 s4 D+ Z& ]" t2 f
NewAccess(CATCmdStarter,pPointCmd,PointCmd);
1 ~5 \) r) |! O. _4 @SetAccessCommand(pPointCmd,"CreatePoint");. }# V5 H* I6 v: z6 ]9 n: }1 P- a+ K
SetAccessChild(CATCmdContainer1,pPointCmd);4 B. B/ X! ^9 {7 x# `) F" b2 I
NewAccess(CATCmdStarter,pLineCmd,LineCmd);
1 _9 s& ]. T5 h% nSetAccessCommand(pLineCmd,"CreateLine");
  ~5 l  l1 a- H2 `, d8 HSetAccessNext(pPointCmd,pLineCmd); # h* g( H2 w. l5 E( E3 [+ y
AddToolbarView(CATCmdContainer1,1,Right);
1 Y  S3 \; K! z" USetAccessChild(CATCmdWorkbench1,CATCmdContainer1);% r) D1 v& \' p$ S
//设置菜单
- _+ D5 k: M! `( W/ ^8 ZNewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);' G" C5 u# i- M+ s0 a( `, j
NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);2 W9 }% {. S, O# \" m4 b
NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);
' W, }9 U- {8 x/ K) L$ sSetAccessCommand(pPointCmdm,"CreatePoint");- s; Z' h7 ^* G6 J( w0 z2 v1 ^: T
NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);3 [* a' ^2 |  \6 O
SetAccessCommand(pLineCmdm,"CreateLine");
0 n2 I+ M7 Z+ M6 O% d2 a8 nSetAccessChild(pPartBenchMun,pPartBenchSmu);
  l- ^' e" X. A5 I9 O# qSetAccessChild(pPartBenchSmu,pPointCmdm);
1 E1 c* A" w2 HSetAccessNext(pPointCmdm,pLineCmdm);
* h7 J0 E, i4 M3 [$ C' ]" LSetWorkbenchMenu(CATCmdWorkbench1,pPartBenchMun);
7 e) i2 w1 x4 ^; W, @+ q5 F  ?7 u. R# P5 b
return CATCmdWorkbench1;3 F: Y# h  a# R( l2 N! \' D
6 d! U- W) y# T1 ]/ b9 |4 H4 H

  ^/ Y' |5 h6 K6 @- o注意这段代码和前面很类似,另外在headers.h中输入- ~# {$ v. w  Q/ A* ~8 x% ^

; H* [/ Y( `% ~* ~+ k& v) i' ?* O
4 L9 j, q0 v6 V$ M2 cnew myWorkbenchCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);
2 F1 G) `# r9 Cnew myWorkbenchCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);2 i3 b1 }5 l: {& @1 t
2 c7 L" a2 H; x) Z

' ^8 X; L; _8 C! J  D5 L; l实际上现在编译的话,菜单和工具条都有啦,现在加入图片和自定义菜单名称,做法和前面一样
1 X; ^! z% \. I% A5 ]& U- UmyWorkbenchCmdHeader.CATNls 中输入
& @! Q& P+ F+ m, n$ a( j2 R' h6 t$ J
myWorkbenchCmdHeader.CreatePoint.Title    = "创建点";1 i7 g; k9 c6 r/ o8 ]
myWorkbenchCmdHeader.CreatePoint.Mnemonic     = "P";. h" W( ~/ r0 i' {3 b
myWorkbenchCmdHeader.CreatePoint.ShortHelp = "快速创建点";
6 M0 E; `8 u4 ?# z  z" |myWorkbenchCmdHeader.CreatePoint.Help      = "创建点";
$ \' L: o( Q  ZmyWorkbenchCmdHeader.CreateLine.Title    = "创建线";
6 \9 J  O3 Q+ {+ OmyWorkbenchCmdHeader.CreateLine.Mnemonic     = "L";' b! z0 e! C6 z4 P, P2 ?8 z' N
myWorkbenchCmdHeader.CreateLine.ShortHelp = "快速创建线";
# Y5 @0 _: C# U) A8 V% z' @myWorkbenchCmdHeader.CreateLine.Help      = "创建线";3 u, I+ Q4 \- J+ z' I
" q8 P- K3 W+ r9 Z$ V, k( i! F
  S4 }: u' ~; x( h/ \) q: \
myWorkbenchCmdHeader.CATRsc 中输入/ c/ z# A1 i$ e  l
( X9 i& e3 _/ v! r
myWorkbenchCmdHeader.CreatePoint.Icon.Normal    = "I_Point";
' S( \- s  N4 Y. }myWorkbenchCmdHeader.CreateLine.Icon.Normal    = "I_Line";
5 @3 R1 a' V' d; M( S
# O! x! ~& i( ~5 s2 r) N+ LmyWorkbench.CATNls 中输入:- _  D# u* c. \
myWorkbench.Title="PLM之家智能设计";- ~" p! [/ a- X/ v
myWorkbench.ShortHelp  = "PLM之家智能设计工具集";1 U3 K+ Y' x) D0 Q: Q# I
myWorkbench.Help       = "PLM之家智能设计,智能设计模块";# V- T% e" U3 n1 L
myWorkbench.LongHelp   = "PLM之家智能设计是基于catia系统开发的一套快速智能设计模块";, i) m" O: W) [6 k9 c

- r1 n- m, D; g7 M$ ?NewToolBar001Tlb.Title = "PLM之家智能设计";' l9 N; X. U& V1 I
PartBenchSmu.Title="PLM之家智能设计";& p1 a3 x5 Y8 D
PartBenchSmu.Mnemonic     = "P";* M, |2 g! I" r5 j5 p) u
) s: M+ v4 ^, c, q" Y( T0 @% V

6 |# e% K& ]3 w" q3 C结果如下:
4 N5 v8 ^5 w; e* r6 ?: u- H& p8 T* |2 ~0 N# D7 Q0 P
) X# X* C( k% I
无标题.png : n: K. O5 C! X: a+ V

4 D+ c" E; W3 w# L9 }, m$ n9 Y" C' C' j( \" L! t- V" L1 `
( a5 G0 }% Z; o8 p& ^/ \) f: w

) N9 F/ _7 y6 y- z. _

6 ?. Q% T( O' t7 l
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了