PLM之家PLMHome-工业软件与AI结合践行者

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

[复制链接]

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

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

admin 楼主

2017-1-20 00:17:03

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

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

x
CATIA二次开发入门教程---12 为自定义的工作台添加菜单工具条  X* w, K1 A% d3 Y* C

: j9 b) \% V% `, W: g/ H/ s

- K1 r1 f+ [, S% \3 H! f( k前面已经创建了工作台myWorkbench和在零件设计中添加了PLM之家智能设计的工具条和菜单,那么接下来如何在自己建的工作台上添加呢?
. S( G$ A8 L4 J, E4 @做法和前面类似,打开workshop.h文件,直接输入:
7 H" X2 E; C2 ?3 Q1 u
; @$ h6 l2 N+ c5 p* w( m/ e& A1 \0 n3 B
* _; E2 a! }" ~. X5 e- d  p- }
NewAccess(CATCmdWorkbench,CATCmdWorkbench1,myWorkbenchWkb);* P/ w2 v% q7 ?
SetWorkbenchPriority (CATCmdWorkbench1, 25);

* U  U7 i% N& {* cNewAccess(CATCmdContainer,CATCmdContainer1,NewToolBar001Tlb);
! D# o9 y8 U5 F4 B4 F+ A, `
; U8 ?$ j% b/ Y6 O$ G/ J//设置工具条
2 u/ l3 }2 j+ ~' z. _4 }8 I

/ O/ v" @4 a1 l( o
9 i" T2 ]( X) ?& BNewAccess(CATCmdStarter,pPointCmd,PointCmd);
- |/ m$ O; a5 t5 K" d4 U8 cSetAccessCommand(pPointCmd,"CreatePoint");4 U* C! S- U& |* ~" q+ A' |
SetAccessChild(CATCmdContainer1,pPointCmd);' s9 m# P# `. o' C+ h& @3 R- x
NewAccess(CATCmdStarter,pLineCmd,LineCmd);5 G0 e" ^4 ]4 E3 K
SetAccessCommand(pLineCmd,"CreateLine");
" E0 @' D1 X$ @& a# r, O# aSetAccessNext(pPointCmd,pLineCmd);
+ [+ ]' k  D! [" {  [6 }' @' }& r& HAddToolbarView(CATCmdContainer1,1,Right);1 U( n8 N5 g. j6 s, N
SetAccessChild(CATCmdWorkbench1,CATCmdContainer1);1 y1 G3 k9 G. E
//设置菜单6 L& n$ O1 Y+ U7 ?1 C6 U3 F
NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
) I: |/ _9 T" t! \3 }# M8 aNewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);  T8 a' {; P4 R" w- P) T
NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);1 a/ f7 t8 \# v
SetAccessCommand(pPointCmdm,"CreatePoint");) Z0 l; C, W5 X5 R* A  e- H) ^
NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
# w5 `/ V3 l, u9 D- R5 u3 RSetAccessCommand(pLineCmdm,"CreateLine");
; ], ~( X' L: W% T& X' nSetAccessChild(pPartBenchMun,pPartBenchSmu);
# M( q- n6 Q# {+ ~% [SetAccessChild(pPartBenchSmu,pPointCmdm);3 r: ]0 m4 l/ j' }0 P! x# W+ F
SetAccessNext(pPointCmdm,pLineCmdm); * K  B" {5 d- S1 v4 j; @
SetWorkbenchMenu(CATCmdWorkbench1,pPartBenchMun);
+ x! B, t- S  `  ?# o
% W- V: a+ E6 Y6 g% J: vreturn CATCmdWorkbench1;/ N! |1 Z3 y$ {" W) P% E

4 r' Z' J7 V9 `) z0 {4 A
% {' o5 C9 e' K: y! G. U% I注意这段代码和前面很类似,另外在headers.h中输入* X8 V/ x# q; c" _' C. N& T
3 O( U. h9 V' H+ v: A. l+ _4 D
9 Y; |: \& y% Z$ ?/ X& {
new myWorkbenchCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);' T  n3 v' h7 [1 F0 ]$ R8 m
new myWorkbenchCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);0 P+ K6 i0 ^* V4 ~# j  K
, |3 Q" ^/ n" T) i' p+ p

1 N# k- J4 r: ]* ?) e6 G) x实际上现在编译的话,菜单和工具条都有啦,现在加入图片和自定义菜单名称,做法和前面一样
$ [* i- M5 [; g& NmyWorkbenchCmdHeader.CATNls 中输入
6 M( j) a) d4 i
& b% h+ `2 a4 j' S* p) TmyWorkbenchCmdHeader.CreatePoint.Title    = "创建点";; Y' @- m9 f) C7 X
myWorkbenchCmdHeader.CreatePoint.Mnemonic     = "P";" a" J* I( H9 o; y& t; _7 ]  ^
myWorkbenchCmdHeader.CreatePoint.ShortHelp = "快速创建点";5 n7 W+ C* v- d7 F
myWorkbenchCmdHeader.CreatePoint.Help      = "创建点";
- D# A- T' f8 B( GmyWorkbenchCmdHeader.CreateLine.Title    = "创建线";0 ~- B6 N+ z$ n1 S8 I8 l) w
myWorkbenchCmdHeader.CreateLine.Mnemonic     = "L";( V$ w7 L7 V! s! P
myWorkbenchCmdHeader.CreateLine.ShortHelp = "快速创建线";
" j6 y( b8 B+ y) Q5 Y  n' GmyWorkbenchCmdHeader.CreateLine.Help      = "创建线";$ Q7 \; x1 |! z" P; p8 t1 R

: K1 _- y  _1 q5 ]+ Y  X
0 ]! Q, @: d1 ]; a% l. ^myWorkbenchCmdHeader.CATRsc 中输入
/ k3 H# ?! |9 M) y- E7 J
8 Q# G* u' |" i; ?. h% F8 ymyWorkbenchCmdHeader.CreatePoint.Icon.Normal    = "I_Point";
2 a$ w8 n5 n, S+ \, TmyWorkbenchCmdHeader.CreateLine.Icon.Normal    = "I_Line";
) b* I2 E/ U9 I3 I* T5 x
$ p0 l! h( C3 }! x2 f! s  LmyWorkbench.CATNls 中输入:
- y% b& ^$ a. e6 n+ ~% MmyWorkbench.Title="PLM之家智能设计";7 n2 Y9 k% u7 L( R2 t) w
myWorkbench.ShortHelp  = "PLM之家智能设计工具集";
; r% Y* G) C1 ^2 o. omyWorkbench.Help       = "PLM之家智能设计,智能设计模块";
/ D8 w7 B$ U$ f# ]8 j" j5 D/ s2 jmyWorkbench.LongHelp   = "PLM之家智能设计是基于catia系统开发的一套快速智能设计模块";
* `, q% E3 C- {6 w0 w3 C  F* h' f+ V" q9 x2 u( g' N) b4 H
NewToolBar001Tlb.Title = "PLM之家智能设计";) M" Q6 A0 M. m* k4 r+ O8 \1 R
PartBenchSmu.Title="PLM之家智能设计";; H" S& y' i, }4 N4 ?8 w/ t) U
PartBenchSmu.Mnemonic     = "P";
. G  R! Z! R$ }2 W7 u
8 O& f; M) f4 n' q4 Z8 Z( x/ H* l% q* C% @9 \4 ?6 E6 R
结果如下:
9 o: I' Z* P) D, K6 I
! ?* @1 N& Q0 v% c+ O
  N4 _# ^: c# f  q/ q/ M 无标题.png * V+ S; H: Q4 z) l4 P

$ R. ~+ F) ]- M1 W$ [7 E# F5 v. |) i
9 W$ b& i3 g# W# X  x
0 u% O+ L& ~% }# J1 N# Y8 f- I" X

/ n) A6 n4 G4 m, x8 j0 w
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了