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

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

[复制链接]

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

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

积分
82170
QQ
发表于 2017-5-8 16:41:46 | 显示全部楼层 |阅读模式

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

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

x
. d% A% {. b2 N% `

* a% X/ N6 l, }# t2 JA Dialog Basic Command (对应案例中对话框 DialogA DialogACmd )7 l$ t  Z1 x6 j# x$ |0 C

6 F+ ~7 L4 a9 w8 [; U
; ?% O9 L( V, e- l, G) Q1 J; J) Y步骤:
5 L$ o; b1 N3 h
# z+ Q% K+ c3 L, H1 创建普通对话框 :如案例中的DialogA,拖拽控件资源进行对话框布局,并保存。可以查看DialogA.h和DialogA.cpp文件中添加了对控件的声明和定义。 - G& m9 K$ V8 a$ g

; {; e5 q' i: Y+ d
1 P$ |" S! j3 c3 g' v/ d% u2 x# m, z/ A0 H. Q% o3 M" H+ Z
File ->Add CAAV5 Item -> CATIA Resource ->Dialog
4 \* q1 z6 H2 L- X$ {6 t2 E
& S: a0 }: u4 @
% c- w1 A' @7 X; I* r- I; R$ e: E0 Y+ l3 d, m: Z8 h
2 创建普通对话框基本命令 :
& Z- R+ Q# t! {* D9 l8 k5 I, L1 n! z
File ->Add CAAV5 Item -> CATIA Resource ->Dialog -> Basic Command
/ l% u$ C$ D& ^3 I2 r6 `. ~) _2 G" c/ M3 d+ q8 U
3 命令驱动对话框/ E/ h- l6 ^" d. f
+ M0 r: v4 b2 J" R: z; f% A" I% H* j4 k
创建命令文件后,创建对话框实例。包含对话框DialogA头文件#include” DialogA.h” ;在DialogACmd.h文件中声明DialogA类对象pDialogA,在DialogACmd.cpp文件的构造函数或者Activate函数中添加代码
6 Q* K( h' S4 j  }/ @
% K1 |9 V. g% n# q/ npDialogA = new DialogA();2 m+ ]5 b6 m6 K, A7 e
3 X& h0 w9 M( ~+ k3 H$ W2 C; I1 @
         pDialogA->Build();, f, s  D  R  ^9 }# a8 j/ d( e
2 u% l( k  h  U4 t) P
  pDialogA->SetVisibility(CATDlgShow);
$ c/ X7 {* \4 i5 |( M7 O' A+ r
0 D/ B: E7 t1 J4 关联工具条、按钮或者其他命令,本例中关联工具条
+ |8 z/ }+ F9 {3 N  ?: K; _, `7 m
建立工具条与命令的连接,通过命令文件启动对话框。0 K9 b( P4 i' s0 g1 A
0 e7 h3 x9 t; H
添加DialogTest  ,DialogACmd& F0 i, K9 B5 D' Z: Z

+ J7 C! J1 ^$ E: G' Z  M/ j5 r
3 I4 e- N& r+ n2 H( k
5 Z) l$ M/ R$ [5 i) P* w1 p# G+ ~5 \. D! w$ r

" V5 U1 {& ^# j6 f  Dialog-box based command 对应案例中的DialogB.CATDlg ,DialogB.h,DialogB.cpp.
0 R5 \% S( C, \8 s3 ?( X+ B: b5 I7 C* g8 |; P" \

! E: v. q# |6 h& {8 _! u' H3 J2 g1 MB 基于对话框的命令在创建时会自动产生同名的.CATDlg文件,与基本对话框不同的是, 对话框 文件中定义了变量  int    m_FirstTime; 通过变量控制对话框对象的实例化。其他实现方式与基本命令相同7 N+ O" ]' ?- `5 f

% ]  t1 T2 J! S0 E2 R5 Y. ~: g% @, }, v

: z+ y- ~5 D6 X& q# O3 k6 @. F9 N0 p5 u( Y9 Q" J

% o4 r/ W; {. v/ l) P6 hC  状态命令在CAA交互式开发过程中的重要内容,比如需要对视图中模型进行交互选择时,就用到该类型的命令。  \, z+ S+ }2 V# w: P0 v

0 D# ?* j) `/ A5 ~! Z2 b用状态命令启动对话框时,同样方式同1>。& ]0 H2 C# v. e; g: n) x

3 R8 a7 c+ n* l, ?pDialogC = new DialogC();, ]% F! W" r# w$ b4 g9 t& |

. T' M# Z. |) G/ j       pDialogC->Build();
" L  l: [+ ^! m& F9 W1 B  G; J% x& y' T) X
       pDialogC ->SetVisibility(CATDlgShow);
8 Z! o1 N& ]! T- `) Q/ G+ ^% D5 j2 m$ `- A

, u0 j2 q( m( ^+ E7 [9 R5 X! Y$ c8 M7 y0 M! X% P. w4 T
三种命令用法总结 ' T+ t9 ?& _1 A0 B
4 l% |6 u6 z" c3 W
基本命令(Basic Command):无需选择对象或输入数值,如加载特征库。用于启动对话框时可以有或者没有输入,无需选择对象。
0 \1 j% {- e6 ?2 a/ F9 ^
4 A. }: k1 \* U  w& n$ Y基于对话框命令(Dialog-Based Command):无需选择对象但需输入数值,如根据输入的坐标值生成点。+ l; O# M  H2 {8 T
+ N, [" k. _, T- k4 W' f
基于状态命名(CATStateCommand):需选择对象,可有或没有面板。只有这种类型的命令才能进行undo管理。
5 g! K  ~: [1 B" F* R0 [( \4 f* o2 }* G! \6 ~
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了