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

Catia二次开发源码分享: 关于创建命令和菜单方法

  [复制链接]

2017-12-12 17:18:06 6095 4

admin 发表于 2017-4-19 21:39:20 |阅读模式

admin 楼主

2017-4-19 21:39:20

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

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

x

9 n8 T! {+ R6 f3 t" r* t- Z4 p1 n5 n2 S& j% d5 w
Catia二次开发源码分享: 关于创建命令和菜单方法
" s0 ?' t/ P! X" {4 a
' i) ]! p( o9 b* E6 o
% b/ y& b; t, F" ~$ I. f
6 _" D, @  \1 s% V5 [; u6 z//Methods implementation2 v6 j# n, D% b7 N# F

" k0 V- r) W) B1 Mvoid myAddin::CreateCommands()
7 o3 s8 V% Y9 {% l0 _{
1 c. R3 w: f- q        new ParTCmdHeader("CreatePoint","CmdModule","PointCmd",(void *)NULL);6 z9 E% V- V  D! `* H9 D% A
        new PartCmdHeader("CreateLine","CmdModule","LineCmd",(void *)NULL);
3 s; {! f2 k0 s& Q8 G: ?        new PartCmdHeader("CreateDialogTest","CmdModule","DialogTestCmd",(void *)NULL);
& b1 A/ m1 ^' A6 j8 ]" `: f}. U% T1 b4 w( a0 N" N' v5 z# B3 s5 G
CATCmdContainer * myAddin::CreateToolbars()
( A9 M0 I  G' w' Z: C( u{
+ w  R4 \% \) v% D. S       
* p$ t& j2 B) \2 @* o: k- U' a) s+ v        //设置工具条+ j, @. T/ z! ~& @
        NewAccess(CATCmdContainer,pPartBenchTlb,PartBenchTlb);
% M# Y; b1 v7 {- `   AddToolbarView(pPartBenchTlb,1,Right);
( G% z3 L; I5 p( D" \* p
" N/ N7 A( ?, ]" t/ l. A" P" f2 ?3 N& N        NewAccess(CATCmdStarter,pPointCmd,PointCmd);
1 w2 E( H) r" J! v* A- T        SetAccessCommand(pPointCmd,"CreatePoint");" I/ c: }* K( N  O# Q: D
        SetAccessChild(pPartBenchTlb,pPointCmd);; f4 u8 f8 p, @# E  |8 m. F

7 Y# C/ i  R; q6 J# E* n: y* ]* e        NewAccess(CATCmdStarter,pLineCmd,LineCmd);7 V3 u% R: h" C, c5 Q7 d2 b
        SetAccessCommand(pLineCmd,"CreateLine");
" h& \8 l: X- J$ ~" E! V1 S        SetAccessNext(pPointCmd,pLineCmd);
1 S$ u) T7 r9 Z  ?  x% d8 I' C! S
1 {9 |% E- ~8 z" o        NewAccess(CATCmdStarter,pDialogTestCmd,DialogTestCmd);
5 s3 W' R- H1 i3 E7 R2 z        SetAccessCommand(pDialogTestCmd,"CreateDialogTest");
8 g# F" V$ ~. R; L6 h' N        SetAccessNext(pLineCmd,pDialogTestCmd);
8 _3 s8 r- l; y; E( x4 c/ N" J  H/ A
       
; b) r7 ]: `2 A, x! m: ^5 `! q/ M        //设置菜单
4 u& T8 G% q( i  [' g; i3 A, i0 Y7 o, K
, c" l8 q- i7 H( R' l0 N- a4 R        NewAccess(CATCmdContainer,pPartBenchMun,PartBenchMun);
; _  `! G0 A5 w6 ]1 e4 z3 G! w6 R3 R        NewAccess(CATCmdContainer,pPartBenchSmu,PartBenchSmu);; }1 ]  g! D* L, T: B1 {
        NewAccess(CATCmdStarter,pPointCmdm,PointCmdm);
+ N% W; U4 R" |- Y: e& L! b: a        SetAccessCommand(pPointCmdm,"CreatePoint");, |! U0 K- V( L7 L
    NewAccess(CATCmdStarter,pLineCmdm,LineCmdm);
) @# s9 C; O0 d1 ?3 R5 g% n    SetAccessCommand(pLineCmdm,"CreateLine");
, @* W7 x/ \9 p9 `% \- q        NewAccess(CATCmdStarter,pDialogTestCmdm,DialogTestCmdm);
# a7 a, r6 `# P" F        SetAccessCommand(pDialogTestCmdm,"CreateDialogTest");* t; M1 l" R9 _: D
       
; p% U* M; Y' P+ T0 k% Z9 Y) k; E: {5 K        SetAccessChild(pPartBenchMun,pPartBenchSmu);* x7 N, t; C6 P9 ?
    SetAccessChild(pPartBenchSmu,pPointCmdm);
0 g1 o, t( V0 v% L  {6 F4 h* |        SetAccessNext(pPointCmdm,pLineCmdm);
0 W& r, J! ^9 R5 ^) F" z    SetAccessNext(pLineCmdm,pDialogTestCmdm);
% `4 q4 z5 O: k
0 O# R3 o) T6 b6 t/ d    SetAddinMenu(pPartBenchTlb,pPartBenchMun);
8 c+ V  Q% O/ G6 M$ G5 X
( C( B1 x3 K, N- A5 C2 O4 k$ q. {) e- e! k2 A/ A0 M2 H1 t

6 \6 `6 n0 }" S) W/ e, P9 D1 j        return pPartBenchTlb;/ Q9 f+ Z+ y2 ?

" B9 g+ I$ }2 R+ [9 X' B' Q; ?}# C  p% j1 T3 V) L% Y! n, b
- R& U% i' F! N* f' @8 A8 ~3 Z
; e( o: o3 w/ X% y& @% x5 Q) C; X
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复4

admin 发表于 2017-4-19 21:41:17

admin 沙发

2017-4-19 21:41:17

在 header文件CATRsc里面设置 图标
! \+ Q+ `! J7 L( [: f6 g) W! VPartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";7 J  l( R' j0 h; q# K/ a
PartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
+ s9 |5 H; {/ x9 x) E在PartCmdHeader.CATNls设置命令名称
, {) n7 a+ W1 Z( d3 TPartCmdHeader.CreatePoint.Title    = "创建点";3 I3 X& J- Q  F  z
PartCmdHeader.CreatePoint.Mnemonic     = "P";
, X; P7 j# v  p. pPartCmdHeader.CreatePoint.ShortHelp = "快速创建点";
/ z* a. F& |+ e  UPartCmdHeader.CreatePoint.Help      = "创建点";
+ c' C- y$ o7 @+ z) L6 w% ]PartCmdHeader.CreateLine.Title    = "创建线";
2 Q; R8 [1 A/ [0 O, ], W+ {* wPartCmdHeader.CreateLine.Mnemonic     = "L";
8 U" ~6 W" P, `# c3 ZPartCmdHeader.CreateLine.ShortHelp = "快速创建线";
' z9 e5 W  Y, U) B+ lPartCmdHeader.CreateLine.Help      = "创建线";
) ]. p3 z: `( g* Z4 ^& a  ePartCmdHeader.CreateDialogTest.Title    = "对话框测试";
& M, D, s: K  V, j% v3 NPartCmdHeader.CreateDialogTest.Mnemonic     = "C";" T3 d1 ^2 Y1 ~& Q* K# b
PartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";
" h0 J8 c8 {6 L6 o% fPartCmdHeader.CreateDialogTest.Help      = "对话框测试";& k8 u6 `! ?8 E
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2017-4-19 21:41:31

admin 板凳

2017-4-19 21:41:31

在 header文件CATRsc里面设置 图标 4 c) z' S! u) J& E
PartCmdHeader.CreatePoint.Icon.Normal    = "I_Point";/ ~0 g, s' b5 L. V- o
PartCmdHeader.CreateLine.Icon.Normal    = "I_Line";
* J+ F6 |  M  k, S. R& ^
9 [/ l7 ~" ^' W$ f
$ I  w- j3 C! b6 R& i4 Z. h在PartCmdHeader.CATNls设置命令名称8 |6 A' b/ U! _: h  K1 x$ W
PartCmdHeader.CreatePoint.Title    = "创建点";$ H) \4 j. t: W+ e  J$ _
PartCmdHeader.CreatePoint.Mnemonic     = "P";2 C* y1 ?* ^6 X! z* |
PartCmdHeader.CreatePoint.ShortHelp = "快速创建点";9 ?$ c% E3 a: [5 z* h+ L3 j$ h
PartCmdHeader.CreatePoint.Help      = "创建点";
( S1 l1 _# h: C; v7 fPartCmdHeader.CreateLine.Title    = "创建线";: C, p+ `+ q( y( u. t
PartCmdHeader.CreateLine.Mnemonic     = "L";! N0 m3 y1 G5 N
PartCmdHeader.CreateLine.ShortHelp = "快速创建线";4 Z7 q; `' l5 K# \
PartCmdHeader.CreateLine.Help      = "创建线";  Y% y, G# p" C4 G8 E
PartCmdHeader.CreateDialogTest.Title    = "对话框测试";8 U2 i& U1 A: V; D- U/ G) [
PartCmdHeader.CreateDialogTest.Mnemonic     = "C";
! ?6 x: b: N0 e% p" _PartCmdHeader.CreateDialogTest.ShortHelp = "快速对话框测试";
6 F/ d, ]' g# }7 C7 z& N2 N5 _PartCmdHeader.CreateDialogTest.Help      = "对话框测试";  \( H. m1 q8 s6 [6 [
1 [1 `, N0 R5 ~& V% c: s
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

大飞行家 发表于 2017-12-12 17:18:06

大飞行家 5#

2017-12-12 17:18:06

刚做CATIA开发,不知道从哪下手。。。现在只会简单的创建2D图,还有简单的实体操作,怎么提高?
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了