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

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

[复制链接]

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

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

admin 楼主

2017-1-20 00:17:03

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

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

x
CATIA二次开发入门教程---12 为自定义的工作台添加菜单工具条
# _4 d# O0 H7 \4 I% X
. g% w6 V$ s" ?- \& M4 @
  z5 `9 Q" r( I
前面已经创建了工作台myWorkbench和在零件设计中添加了PLM之家智能设计的工具条和菜单,那么接下来如何在自己建的工作台上添加呢?
5 }2 h7 X9 L! B7 m% n9 U做法和前面类似,打开workshop.h文件,直接输入:( ^9 E) x, c. F/ G0 h. y2 ~# z/ v

* Q" Q& A) o* U3 ?  I) W

# F2 [& G& a+ F/ j7 s2 \NewAccess(CATCmdWorkbench,CATCmdWorkbench1,myWorkbenchWkb);+ @+ @  s8 n9 d6 o. o
SetWorkbenchPriority (CATCmdWorkbench1, 25);
! d" t8 I) s: E7 ~
NewAccess(CATCmdContainer,CATCmdContainer1,NewToolBar001Tlb);
: u$ W% W* N) V6 s& c* y0 z/ `( c6 C+ ?' N* n' N" a$ g, `
//设置工具条
/ k" g+ F) {% H5 i" i. ^  ~6 I

: Q( o" y$ c2 t9 `2 }; h1 D' s7 m7 a5 d; G' L2 m( s+ q+ _9 U" L0 Y' n
NewAccess(CATCmdStarter,pPointCmd,PointCmd);% m6 ~+ h/ P" W$ U2 E. k8 I
SetAccessCommand(pPointCmd,"CreatePoint");6 ]$ s; D7 ^3 {0 j: c# T
SetAccessChild(CATCmdContainer1,pPointCmd);
' ?3 N* i/ w) h6 p* D& m& f6 XNewAccess(CATCmdStarter,pLineCmd,LineCmd);
% [% |/ j9 n  m. O2 Y# u* _SetAccessCommand(pLineCmd,"CreateLine");
& K  {+ C. F$ U5 o$ zSetAccessNext(pPointCmd,pLineCmd); % s# l& }" c6 r- Y" i# P
AddToolbarView(CATCmdContainer1,1,Right);( w% r7 x8 E. D4 h  B7 d" Q% A. A
SetAccessChild(CATCmdWorkbench1,CATCmdContainer1);
4 V& \9 w4 P4 ]' M' U- J. s  {//设置菜单6 }) S# T; U% J, j
NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);1 J& Q* J0 w) W5 T3 n( e
NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);
) v1 v9 ]0 K9 j* B6 u' hNewAccess(CATCmdStarter,pPointCmdm,PointCmdm);2 h" w$ X' }7 p$ l! u9 @5 |* V
SetAccessCommand(pPointCmdm,"CreatePoint");
* O+ `- \5 ?) ^; W0 CNewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
1 c! P  N; ~/ e/ TSetAccessCommand(pLineCmdm,"CreateLine");
( r! V) o5 E5 J# TSetAccessChild(pPartBenchMun,pPartBenchSmu);1 ^9 K  q; ]1 @& `# P
SetAccessChild(pPartBenchSmu,pPointCmdm);
" o$ r  |: n' r. KSetAccessNext(pPointCmdm,pLineCmdm);
4 F3 _# a9 U" t2 H6 E3 YSetWorkbenchMenu(CATCmdWorkbench1,pPartBenchMun);6 [7 ~+ @7 _8 A3 @! k$ ]& M

  {$ A& B6 K4 L; F) kreturn CATCmdWorkbench1;; i. P& e, j5 `& F8 w4 R  ^
5 |  ?5 r5 \2 Y/ t5 y8 U/ |

/ {7 x- T3 A! q( w6 |7 Z7 B注意这段代码和前面很类似,另外在headers.h中输入
' l! T- D2 I0 z4 c
7 B9 l2 e- J4 }0 @4 i6 v# m3 R. Y4 h- L$ L; B! C: T/ w( w1 h1 p
new myWorkbenchCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);, |2 k) q! U( H9 Z& W
new myWorkbenchCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
' G4 {- Q$ V7 U4 J1 p$ `/ E0 l% z; F( K7 h- F8 G! w

5 A# {7 P% ~; p% m; q3 I4 d, T实际上现在编译的话,菜单和工具条都有啦,现在加入图片和自定义菜单名称,做法和前面一样
- G. @! X4 U7 w' wmyWorkbenchCmdHeader.CATNls 中输入
" C9 o- t2 @2 D4 h& z2 x
7 ]. c" n( P& f" NmyWorkbenchCmdHeader.CreatePoint.Title    = "创建点";
" _8 u, \6 O1 m' @; \myWorkbenchCmdHeader.CreatePoint.Mnemonic     = "P";
1 U/ L# g4 t$ J. z& Y8 umyWorkbenchCmdHeader.CreatePoint.ShortHelp = "快速创建点";  z! W- v5 [: Z6 ?. l, f
myWorkbenchCmdHeader.CreatePoint.Help      = "创建点";+ f- {* d; N6 @: F5 c' v
myWorkbenchCmdHeader.CreateLine.Title    = "创建线";
+ T2 I* }* z) umyWorkbenchCmdHeader.CreateLine.Mnemonic     = "L";
4 E& L# S% i) BmyWorkbenchCmdHeader.CreateLine.ShortHelp = "快速创建线";6 C+ a* c: Y8 {+ V
myWorkbenchCmdHeader.CreateLine.Help      = "创建线";( \- w# y& l" T, }# t
' g% |3 ]" R! `0 r

% l& V$ a3 j4 d) r9 c5 L+ DmyWorkbenchCmdHeader.CATRsc 中输入
0 T( d0 I- F4 ]
: M: l7 P. j! b8 GmyWorkbenchCmdHeader.CreatePoint.Icon.Normal    = "I_Point";
; v6 ?8 {" H; A: j) dmyWorkbenchCmdHeader.CreateLine.Icon.Normal    = "I_Line";
( y/ W& h. J) A+ @* d/ v  G2 _
* T" c% o/ O# Q1 C' PmyWorkbench.CATNls 中输入:
0 A( @6 t: ?9 q. U  ^. K& [myWorkbench.Title="PLM之家智能设计";4 z" }6 F) c: |$ K! L8 E
myWorkbench.ShortHelp  = "PLM之家智能设计工具集";3 ?7 B. F  b" t& T. ?
myWorkbench.Help       = "PLM之家智能设计,智能设计模块";
# ^; }5 d# D2 b& d- }myWorkbench.LongHelp   = "PLM之家智能设计是基于catia系统开发的一套快速智能设计模块";
3 _4 M  Q4 K' a( \! Q& Y3 C5 i5 O8 J# Z4 L) }7 X5 K1 m
NewToolBar001Tlb.Title = "PLM之家智能设计";2 S* q: o) t: N0 j
PartBenchSmu.Title="PLM之家智能设计";; X# v* b. g% [$ e* b! n
PartBenchSmu.Mnemonic     = "P";: c- d; G  Z& s8 U: W) X& d

/ f0 S1 T5 t, L, |" s% X
# ~9 c9 y* Q; M2 ~+ ^$ f. _结果如下:
5 |2 Y* R1 Q, ?$ W/ x+ \
, V* d3 Y8 f( B. x3 E  E* H, p* p6 |. B
无标题.png
4 a! v- M1 h3 F& I; V8 O3 v8 ]! M/ i8 N, Y) {

2 K$ L; H( s: H. R1 E9 ?, V" \! x# Y) ^9 F2 K
# D7 r& x6 o2 J" s9 m2 P

. I- j) L, t! s# @  E5 @, R1 {  T
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了