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

Catia CAA 三种命令启动对话框的方式和区别

[复制链接]

2017-5-8 16:41:46 4079 0

admin 发表于 2017-5-8 16:41:46 |阅读模式

admin 楼主

2017-5-8 16:41:46

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

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

x

" A5 k/ F- g/ `3 z
5 x& G& B+ n# p  i  ~; C7 o( PA Dialog Basic Command (对应案例中对话框 DialogA DialogACmd )
  d( R5 s. J) K0 f( E4 Q
# @# {+ U5 l2 T5 |1 @8 \: U3 F
5 a6 _# J+ Y% \% y) e步骤:
) f5 V) A& h2 w: Y: ^
2 ]5 U% f: Z; M/ y( c( T1 创建普通对话框 :如案例中的DialogA,拖拽控件资源进行对话框布局,并保存。可以查看DialogA.h和DialogA.cpp文件中添加了对控件的声明和定义。
6 z6 W5 I2 m, C
5 }' Y5 n& p3 e  ^) a$ P9 ^, T, q) ~+ w& m. w

. C2 h. o6 m3 g. o# ]1 PFile ->Add CAAV5 Item -> CATIA Resource ->Dialog, U3 r/ g) s0 N4 @5 y0 d6 [% B
  o5 k, P+ D: H. A, E
4 q+ P- J! \+ V2 _; G, _
8 S+ P$ _* r" d
2 创建普通对话框基本命令 :
6 t7 D" `" @( v2 g1 G. `3 v  v4 n4 I  ?- j: q6 N' I7 i
File ->Add CAAV5 Item -> CATIA Resource ->Dialog -> Basic Command5 k0 G0 k2 H5 ^0 [) G
% h: o+ Q6 |5 x9 V+ J( n
3 命令驱动对话框( d# q  P8 V" S* }

5 C6 r% O) N8 m5 F9 D9 [1 ~+ M% Q$ ~: e创建命令文件后,创建对话框实例。包含对话框DialogA头文件#include” DialogA.h” ;在DialogACmd.h文件中声明DialogA类对象pDialogA,在DialogACmd.cpp文件的构造函数或者Activate函数中添加代码, _% M& F0 [$ ?/ T% ?4 ]0 P# q, H

% V: @+ \( u; C+ c% _. {  Z8 c  I% X& mpDialogA = new DialogA();5 B5 B" I* ?1 t" v6 W/ d) |
& D. m5 r; v2 O' y6 M9 t' @
         pDialogA->Build();  k* G7 A8 a" j; z% f
$ K5 M) x% F! e2 E$ L4 h) s% W
  pDialogA->SetVisibility(CATDlgShow);" |  L1 B6 S& W( R! ^0 u, c9 a; }

  G/ ?2 e7 r7 y4 关联工具条、按钮或者其他命令,本例中关联工具条  h* D2 T4 W0 |% [* O( l% n

( ]  D" z# z, z建立工具条与命令的连接,通过命令文件启动对话框。1 L; b: O' R. f' K/ t
0 d& B* c8 V! u# Z' q2 D" }7 Q8 ^
添加DialogTest  ,DialogACmd8 D# ?5 F+ m: U% F+ ~+ E4 M

3 ~3 D7 I  Y' S' L+ J# K
+ T! ^( ^. d* t% `
3 F3 J8 U8 A' {6 a+ j9 k  @0 [* |- N0 K: [/ D4 T

2 w6 s8 [) c  @  o/ p  Dialog-box based command 对应案例中的DialogB.CATDlg ,DialogB.h,DialogB.cpp.! L" \6 [0 w1 N3 F% ~* M, Z

5 m1 I3 l" l* M+ {1 r$ e* s
" A" K- }; C0 ]' wB 基于对话框的命令在创建时会自动产生同名的.CATDlg文件,与基本对话框不同的是, 对话框 文件中定义了变量  int    m_FirstTime; 通过变量控制对话框对象的实例化。其他实现方式与基本命令相同- B/ m, z. \" _% k

' _# Y6 u- a6 Y5 c0 W, V$ y" |* _7 b2 l! ^; i5 w

- N: d+ ^2 R4 E% x# R+ I" d2 A! Y, n3 `/ Y' Q& S. M

% I7 {3 d% y7 C( s7 j  M  ^! m  F- [& yC  状态命令在CAA交互式开发过程中的重要内容,比如需要对视图中模型进行交互选择时,就用到该类型的命令。) a) t  ]0 q$ T. N! R# d) ~

0 r( h, f3 [0 U. A9 C* J用状态命令启动对话框时,同样方式同1>。8 v9 r" `0 @2 Z% M

8 k8 M8 g1 U/ ?% m5 d+ [8 t6 IpDialogC = new DialogC();- s6 R) X/ b% R; x, b

) g( L9 z: z! E$ ?" _1 I       pDialogC->Build();
9 y6 j5 I- r& a3 Z6 ^( P) E( y2 c
       pDialogC ->SetVisibility(CATDlgShow);
/ d# D' o6 p6 D6 s$ \9 L. P- w+ D+ k! t
( {4 o% `- f+ Y6 y  y) e/ H
/ V; K7 v1 A) ]3 |( B3 ?3 {* Z6 N
三种命令用法总结 3 ^) Y9 z& B3 Y' c% D. Z3 y) r
, T  z, |1 Q5 p9 Q) v0 j/ d# C6 L% D' g
基本命令(Basic Command):无需选择对象或输入数值,如加载特征库。用于启动对话框时可以有或者没有输入,无需选择对象。1 \( n; \( f5 c5 X% M6 ]. f( t: d9 V

% n' T9 d5 U  K, Z( c基于对话框命令(Dialog-Based Command):无需选择对象但需输入数值,如根据输入的坐标值生成点。1 i9 q: S8 b3 T2 b) V- |+ n4 {" I) N. E
% A+ L; b; i) Y
基于状态命名(CATStateCommand):需选择对象,可有或没有面板。只有这种类型的命令才能进行undo管理。6 i6 O1 j4 D" g

. y4 [, Q# R3 @7 I' c
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了