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

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

[复制链接]

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

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

admin 楼主

2017-1-20 00:17:03

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

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

x
CATIA二次开发入门教程---12 为自定义的工作台添加菜单工具条
: ^5 b8 ^, X- P& n$ c6 i
7 p* S+ E4 C: m" Z3 h: V" t
+ q$ `8 O. {, f3 D- A' d4 K
前面已经创建了工作台myWorkbench和在零件设计中添加了PLM之家智能设计的工具条和菜单,那么接下来如何在自己建的工作台上添加呢?
5 N7 `0 ?0 `) ]' O2 j, d! @做法和前面类似,打开workshop.h文件,直接输入:; Q7 W& C/ d/ A

+ I1 S' ]$ y5 N8 u8 B2 `+ F

* d1 ~$ U  ^& ?, KNewAccess(CATCmdWorkbench,CATCmdWorkbench1,myWorkbenchWkb);: w6 E/ S, y* R+ N) y4 v
SetWorkbenchPriority (CATCmdWorkbench1, 25);
, ~( g( {& n; w3 L5 _& E9 d
NewAccess(CATCmdContainer,CATCmdContainer1,NewToolBar001Tlb);
) ]: k4 Q. |1 ^' J) x& y7 Y+ F
3 p. t( ^; L# I3 ~5 ~//设置工具条
1 m/ Q" i, A: F4 i+ F, R! p

& B) p. P: P! A3 C
; P- X; f0 g9 ~/ nNewAccess(CATCmdStarter,pPointCmd,PointCmd);; P. q) l% \1 r. }* X1 s7 g5 Z
SetAccessCommand(pPointCmd,"CreatePoint");
8 _: J( H1 z' l0 p& NSetAccessChild(CATCmdContainer1,pPointCmd);
* g. z' c0 t8 Q1 l: BNewAccess(CATCmdStarter,pLineCmd,LineCmd);6 j! B# O7 F/ r: S3 z
SetAccessCommand(pLineCmd,"CreateLine");
* [" A' R+ _8 u$ h$ H; |3 MSetAccessNext(pPointCmd,pLineCmd);
# w" v* T+ M* {* A+ UAddToolbarView(CATCmdContainer1,1,Right);
: x- k7 a9 u7 g: h4 o, J1 vSetAccessChild(CATCmdWorkbench1,CATCmdContainer1);
) G. e7 z5 l- h7 g% A2 L% v, H//设置菜单
  u* T8 n! s* f7 nNewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);6 Q; h) e3 ^2 o$ x( F* O, k
NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);
5 Q' @0 Z+ _% q3 O% l- jNewAccess(CATCmdStarter,pPointCmdm,PointCmdm);
2 r9 D% U  a8 `0 ]SetAccessCommand(pPointCmdm,"CreatePoint");2 C! T& s( z- F7 e( F; I
NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
+ V8 |* b) Z( G0 n: p/ c) H0 bSetAccessCommand(pLineCmdm,"CreateLine");
& f0 N! D2 r0 L: WSetAccessChild(pPartBenchMun,pPartBenchSmu);% L( V9 ^2 {5 ]  L
SetAccessChild(pPartBenchSmu,pPointCmdm);
2 P. y; V/ F. H6 O- b' HSetAccessNext(pPointCmdm,pLineCmdm);
3 ~: o% V- N: O& M  YSetWorkbenchMenu(CATCmdWorkbench1,pPartBenchMun);! w( y6 u# F& A8 `
9 }: G% T3 u& S/ N' [  y
return CATCmdWorkbench1;% e9 g( y9 m) W: Y) ]
) [: A. r7 D7 N( N, M
% O9 ]' k) `5 h' L) E
注意这段代码和前面很类似,另外在headers.h中输入
& V9 h4 ^. s0 ^* w9 f
. ]$ T! x& r" D1 @
1 w7 g/ H  o0 N' y2 X# G6 S" X* nnew myWorkbenchCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);8 P9 B2 m! e! u; d$ h3 I% U
new myWorkbenchCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
1 q6 j" n$ a" w* S; L1 y3 D: s2 B; U# f

- U6 [5 s3 s$ O2 \% w实际上现在编译的话,菜单和工具条都有啦,现在加入图片和自定义菜单名称,做法和前面一样
: L  o! Y! j% @( P$ g0 PmyWorkbenchCmdHeader.CATNls 中输入
& K$ b4 |! D( |+ d. R3 N8 c3 s  ~
myWorkbenchCmdHeader.CreatePoint.Title    = "创建点";  f" A! z# H# r4 N
myWorkbenchCmdHeader.CreatePoint.Mnemonic     = "P";
0 _7 c0 V( b) [+ ]- umyWorkbenchCmdHeader.CreatePoint.ShortHelp = "快速创建点";, `$ e, J6 b3 x% ?+ H  S
myWorkbenchCmdHeader.CreatePoint.Help      = "创建点";
( v% t8 L  h- x" w' L: u0 ZmyWorkbenchCmdHeader.CreateLine.Title    = "创建线";
; [# O) C5 F: ^, ^; p& smyWorkbenchCmdHeader.CreateLine.Mnemonic     = "L";: V+ m; `- _8 W. V  O
myWorkbenchCmdHeader.CreateLine.ShortHelp = "快速创建线";
( }6 G% I$ X( @: mmyWorkbenchCmdHeader.CreateLine.Help      = "创建线";7 Q$ \1 V' x9 Z* m; o" ^  n
: [4 A  P; n0 v$ o5 r/ [) h3 I
. k8 a! z& ~" C6 M: A- t( X
myWorkbenchCmdHeader.CATRsc 中输入
" b5 j1 D+ b* T+ S8 r+ i
' T$ M( B; H" o$ x: imyWorkbenchCmdHeader.CreatePoint.Icon.Normal    = "I_Point";' H( [: G; d7 [
myWorkbenchCmdHeader.CreateLine.Icon.Normal    = "I_Line";
: `2 e$ T+ D3 P6 y
6 L- \, J5 ~/ B# O1 w8 O; wmyWorkbench.CATNls 中输入:% M- z- f3 H. V* p
myWorkbench.Title="PLM之家智能设计";6 P) m3 C4 i$ U. l3 V, l2 C4 H# n
myWorkbench.ShortHelp  = "PLM之家智能设计工具集";
6 T& Z. g6 C7 x& ~myWorkbench.Help       = "PLM之家智能设计,智能设计模块";$ T' A- R; X/ u8 i* D# T' p
myWorkbench.LongHelp   = "PLM之家智能设计是基于catia系统开发的一套快速智能设计模块";
) z: g0 C, ?$ b$ Z: D+ w2 J+ b( ]% y
NewToolBar001Tlb.Title = "PLM之家智能设计";
0 j, d4 a6 Y% F* H. ?$ HPartBenchSmu.Title="PLM之家智能设计";, K2 D4 P2 }) X, P2 U- W% g+ X' M
PartBenchSmu.Mnemonic     = "P";
' V" x9 Z3 I! |6 S. ]1 o0 v. \' P9 z) J; y4 u# d
) U- [1 k8 A! B; J
结果如下:$ e; q; A! e& U7 z# T" C0 @! c
' E* |* L, l( z# \7 ?

% Z$ @% M2 z! g# ~8 J' I" { 无标题.png
0 ]5 w4 v2 Z5 h8 Z9 f( Z4 `* `; u* T- u' w6 i+ Q# i
* w1 h+ @6 U5 u
1 P0 m& M3 b$ l& o6 \
' m7 t9 H! {7 k' J& c6 N

/ d/ Q: O7 z& ?: @
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了