PLM之家PLMHome-工业软件践行者

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

[复制链接]

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

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

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

x
5 V1 c" z: M# `8 _

# O) F( B3 `" f' H: i# d$ _6 JA Dialog Basic Command (对应案例中对话框 DialogA DialogACmd )
% J3 Y- S8 _: K& I# ^( N0 S1 A2 {8 z1 c, D+ k( x9 S
9 Z$ z; f4 c& L5 v1 @* o0 O
步骤:9 z+ [# B8 L7 |# F6 `7 C  ^$ {
  Q, `1 ^  S- `: u( u# N6 m) [0 R
1 创建普通对话框 :如案例中的DialogA,拖拽控件资源进行对话框布局,并保存。可以查看DialogA.h和DialogA.cpp文件中添加了对控件的声明和定义。 ; |$ R+ O6 N/ S5 F

- |- \: S0 L' }' J# f, J% s# s5 u/ i4 W) u% [5 N
) W, r# k: U4 O) F
File ->Add CAAV5 Item -> CATIA Resource ->Dialog( n1 n& s9 x# [3 ?1 _
. J  Z& H% ~$ j6 I2 d6 E- |9 s+ b
5 X' p3 ]3 h# P+ I9 d1 _/ _
8 Y- X2 G. U7 ^( z
2 创建普通对话框基本命令 :
4 ?. ^- ]) C9 t) a! h9 |: {: M. w/ |) M5 V+ W& O) r9 V
File ->Add CAAV5 Item -> CATIA Resource ->Dialog -> Basic Command
8 r. p6 X5 Q, R) m5 z# @0 r) |' m6 g( A
3 命令驱动对话框2 J* n7 X2 x; G* J* \5 c
& C* a8 X5 d* ]) c6 b
创建命令文件后,创建对话框实例。包含对话框DialogA头文件#include” DialogA.h” ;在DialogACmd.h文件中声明DialogA类对象pDialogA,在DialogACmd.cpp文件的构造函数或者Activate函数中添加代码
/ g0 u2 Z" p$ E0 |9 x7 P9 V6 X
9 r' T: J) J& G  q$ U* ypDialogA = new DialogA();
& c3 m+ F4 S$ U* {3 v- y
+ M) f- A2 l' C4 j2 \# B         pDialogA->Build();3 W5 y9 R2 r5 t. C1 q9 t5 b6 i( x

. z% L2 A! d5 H- g" d- Y' F$ @  pDialogA->SetVisibility(CATDlgShow);
# P6 Y: X- n& ]! y
' ?' M% P# a+ `4 p  m' N4 关联工具条、按钮或者其他命令,本例中关联工具条& ]+ Q5 v( p: a  N$ }

% V) p: J6 F$ k9 I( i, M5 G6 T1 P建立工具条与命令的连接,通过命令文件启动对话框。( x; J8 y7 ~  M0 u8 _; T# K
" U. r" ?! w: j5 B% j9 j9 y4 r  @
添加DialogTest  ,DialogACmd6 K; k# [1 B8 W/ [
: ?5 l' M) C4 `7 ^9 v8 X, @+ R2 L, j

; J! }. b4 H/ ]2 N$ d
  a4 s: n6 O3 t1 c9 y+ T' x& @) j
$ n4 Z: a/ P" G/ J
  Dialog-box based command 对应案例中的DialogB.CATDlg ,DialogB.h,DialogB.cpp.
1 F* `" z- L; J9 T1 P- z4 P5 a3 Y. Q8 ^

1 m* j% a9 O4 L# pB 基于对话框的命令在创建时会自动产生同名的.CATDlg文件,与基本对话框不同的是, 对话框 文件中定义了变量  int    m_FirstTime; 通过变量控制对话框对象的实例化。其他实现方式与基本命令相同2 N  F) l, J9 {
/ k, E6 R, f& q( Q  J% T$ U- m' [
8 C6 e9 ~  [( U
1 B* H' q: C/ |/ g. J0 d4 x! U

# G8 t" f* B$ K. f6 ~5 Q
0 r0 D8 _$ B, a6 J9 Y9 f- JC  状态命令在CAA交互式开发过程中的重要内容,比如需要对视图中模型进行交互选择时,就用到该类型的命令。
. c# V# m  [9 g6 u4 {* y0 M- J! q3 [
用状态命令启动对话框时,同样方式同1>。+ z# X6 ?& C  r* E7 j- [6 }

# \1 h1 X- M! [+ `" ^8 N7 [# dpDialogC = new DialogC();
8 b9 g8 \! k: l. f# T7 j% p( u5 v$ {% W0 y% G
       pDialogC->Build();
% c1 u/ e" k9 [1 m' }+ u5 ^
- J) B1 Q8 C  [4 S+ y$ S6 C& i: t       pDialogC ->SetVisibility(CATDlgShow);2 D; y: \! D, ]" V

) j6 O0 z# }0 i; I3 `, A$ s) J  M$ ?1 H$ Z2 c

. b' [6 I1 j8 ?8 d, V$ a' w三种命令用法总结   V! E& q  I  s4 U8 h! J1 D6 q" _8 A4 i7 v
7 N! X- L" Z3 @& @
基本命令(Basic Command):无需选择对象或输入数值,如加载特征库。用于启动对话框时可以有或者没有输入,无需选择对象。
/ d$ x# X  ]0 L' w* I
; j* H- g1 R$ R6 D: U0 ^基于对话框命令(Dialog-Based Command):无需选择对象但需输入数值,如根据输入的坐标值生成点。; i+ r6 o8 v, A# y2 X0 J6 D

+ c8 n2 Z7 l2 V9 C0 ]基于状态命名(CATStateCommand):需选择对象,可有或没有面板。只有这种类型的命令才能进行undo管理。
( h# f& w# l% D; s
+ P6 ~5 q# m  m* G4 f8 x1 X
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了