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

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

[复制链接]

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

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

admin 楼主

2017-5-8 16:41:46

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

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

x
$ o6 L% P! s* W; e

  K2 ]0 V" {. f/ M0 R( k% _! K! ZA Dialog Basic Command (对应案例中对话框 DialogA DialogACmd )
& A+ j. p% s, r, n  M" |
! Z. p' P8 I8 v* K( ]! X( g: ^5 H- X/ N. ]8 F% c( U* [8 h
步骤:" o8 o6 I( ?1 z9 h7 Z  p, f
5 L2 Y' k6 Q  X% B
1 创建普通对话框 :如案例中的DialogA,拖拽控件资源进行对话框布局,并保存。可以查看DialogA.h和DialogA.cpp文件中添加了对控件的声明和定义。
' t- ^2 }) _/ C! g. t% t. L5 W& a* J+ P% X4 e9 l

6 E: W5 Z* O) h5 l  T
7 o. l/ y3 w) W5 O( L/ f! Q  w) G% |File ->Add CAAV5 Item -> CATIA Resource ->Dialog$ ?# B! m- Y7 m' C

) i3 y- W# d  b
6 Y/ b+ u! |' h! p6 z1 |2 w8 Q4 q: q6 l' ^' ^! Y0 {/ {
2 创建普通对话框基本命令 :
  w. `* `& }. v8 B. j9 |
) ~! U3 J: p' Y1 O% s& bFile ->Add CAAV5 Item -> CATIA Resource ->Dialog -> Basic Command
" W1 j  |, m8 T0 ?6 p/ w& z# P
$ x' e1 S+ E5 ~8 i7 @1 }3 命令驱动对话框2 u( {% J( x" i: r: R9 B* s/ G0 V/ D
/ s1 w' o, X4 J, [( T. d; [
创建命令文件后,创建对话框实例。包含对话框DialogA头文件#include” DialogA.h” ;在DialogACmd.h文件中声明DialogA类对象pDialogA,在DialogACmd.cpp文件的构造函数或者Activate函数中添加代码# J% I& f7 q7 _

, |0 w! Q8 I- WpDialogA = new DialogA();
$ N& j& `. h4 u8 j$ P
* H. `: k* p& @% D4 c9 ~* ]         pDialogA->Build();2 `7 ?% ~& g6 A9 E1 S" K7 {

/ B9 W" r; B0 Q* [0 @" S  pDialogA->SetVisibility(CATDlgShow);
9 w- v5 B% c0 F. B
% V% ?2 R6 ~. D# U6 e. j) ?4 关联工具条、按钮或者其他命令,本例中关联工具条
# o6 N' \  l# Z+ D4 [: A0 e* r8 m2 Y) \
建立工具条与命令的连接,通过命令文件启动对话框。' j) p- m8 x3 ?1 s; M2 I( `  Y- [9 s

0 s- ?" _  a$ ^添加DialogTest  ,DialogACmd. O; K: h3 ?+ V# [

, P( r% _' J" B
9 Z) {8 |0 S% ?
. D! l% g. g0 n
3 H1 W# M, X/ H6 M# A  O9 [) R
& z- V  n7 C1 i' ?, i* O1 U  Dialog-box based command 对应案例中的DialogB.CATDlg ,DialogB.h,DialogB.cpp.
( t' {3 E% N2 P3 m7 ^' R
- M9 h0 n; K/ _% J' \) P; ?3 }0 C! L; f$ L! h
B 基于对话框的命令在创建时会自动产生同名的.CATDlg文件,与基本对话框不同的是, 对话框 文件中定义了变量  int    m_FirstTime; 通过变量控制对话框对象的实例化。其他实现方式与基本命令相同
5 L" A/ k& @/ w/ ?4 Q7 \6 ?. x4 x- D! e! |

+ s3 Z% N9 h$ C3 o/ v, w0 B  K# ^

5 W) C& X2 g5 C" j' ~
5 K. ~9 a1 f8 c6 d& s9 MC  状态命令在CAA交互式开发过程中的重要内容,比如需要对视图中模型进行交互选择时,就用到该类型的命令。
& C1 A2 j% k# D0 w+ `( S- l0 |9 {# u: [' c8 K2 S
用状态命令启动对话框时,同样方式同1>。
7 m9 M0 N$ [9 B6 A% q5 N  z/ A+ p' g/ D1 }! {2 c% D
pDialogC = new DialogC();
( b4 N# q: c; J# J5 d. t' ~$ K' m) O& |0 ]
       pDialogC->Build();
& T+ `: p+ [4 [; t; J$ I: b5 A0 l2 d( V. a, _
       pDialogC ->SetVisibility(CATDlgShow);  j/ J5 |! r2 I9 L# P! O' I
/ W7 p3 @8 R: C3 f+ M
* \0 j' k6 i/ ^. h7 @4 ^: h
  E" I2 s" l% D8 x
三种命令用法总结
9 T- S; {! t8 f3 u  Y3 k; c+ j* }( E; r) e
基本命令(Basic Command):无需选择对象或输入数值,如加载特征库。用于启动对话框时可以有或者没有输入,无需选择对象。
8 Z/ g* j3 @: c8 P* m$ C5 m! k3 C
2 j) P6 @! F; i0 @& ~4 Q基于对话框命令(Dialog-Based Command):无需选择对象但需输入数值,如根据输入的坐标值生成点。+ g+ @$ l; V5 I$ D( ]

+ |; C  h) H4 c1 s+ @4 Q  H基于状态命名(CATStateCommand):需选择对象,可有或没有面板。只有这种类型的命令才能进行undo管理。
3 r, e( s1 n& }1 y4 ]+ X. h, d0 l0 g0 X3 O6 h* n7 H/ {' N
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了