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

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

[复制链接]

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

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

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

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

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

x

3 M+ [. O: v4 E% S  ^
7 \" u% i& z; b2 f$ m9 TA Dialog Basic Command (对应案例中对话框 DialogA DialogACmd )
, K; H& J3 _7 j
0 Q4 _7 N0 t& K0 a- D5 J$ H& g+ u- @0 v+ \4 O! W9 m
步骤:
9 i  F; G3 r4 a5 N9 C
8 i7 P4 O6 P/ Q. v/ U- y1 创建普通对话框 :如案例中的DialogA,拖拽控件资源进行对话框布局,并保存。可以查看DialogA.h和DialogA.cpp文件中添加了对控件的声明和定义。 ! G! o9 w! y. q" s- N! K
" `! Q, F! Z/ }; T" W
$ o7 ?6 m+ {4 c' Y2 \! p( z/ ^$ T, f
9 p/ o* B. z/ {* |) ^
File ->Add CAAV5 Item -> CATIA Resource ->Dialog
4 l" C: w: c8 K. b: w6 ~3 i, s
- R$ V. O& L0 X+ k  R
% g1 M3 e# p4 y
1 P% k, r3 X9 u2 创建普通对话框基本命令 : - g4 _$ i" O6 ~0 L5 J9 X

1 L% ~, j+ J, `, ~. s/ HFile ->Add CAAV5 Item -> CATIA Resource ->Dialog -> Basic Command, H: x% a* @8 L$ d
) z: H1 m  |2 }
3 命令驱动对话框
* Y: z( H! M3 Q4 W8 [- Q( Y$ ?# W$ W+ G0 u% Z
创建命令文件后,创建对话框实例。包含对话框DialogA头文件#include” DialogA.h” ;在DialogACmd.h文件中声明DialogA类对象pDialogA,在DialogACmd.cpp文件的构造函数或者Activate函数中添加代码
0 V4 y+ Z8 k7 ]( ]7 P, k5 e( ~2 R& H; q7 t: F
pDialogA = new DialogA();
3 X( Q. b3 }- y; r3 O1 z/ ~& J  f
. W8 g% ^2 K8 a, j& w; T7 P         pDialogA->Build();" k6 O) J: D$ z8 C: u0 N

/ p* }" \% q) L4 F* L1 S  pDialogA->SetVisibility(CATDlgShow);
' x2 v" p& Z8 y% X' ]+ T- d; A$ t( e8 L
4 关联工具条、按钮或者其他命令,本例中关联工具条
. ]7 I3 v7 G5 q& C# \) A9 U2 i" U9 P! k9 |
建立工具条与命令的连接,通过命令文件启动对话框。2 I/ q" i, t7 q0 o& k3 p* S. Q

2 L; z, Y/ y' ~添加DialogTest  ,DialogACmd
; V9 k9 O* I5 q' o, q% l+ ]9 w0 Z2 J7 N3 g& ~3 P# d( Z

8 j  |3 D3 q- O4 b- d8 w
1 X$ c' }5 ?* E4 F9 c2 r: `( ]7 m! _2 f
3 _4 F( m+ ^- R
  Dialog-box based command 对应案例中的DialogB.CATDlg ,DialogB.h,DialogB.cpp.
) C% n5 W# P/ m( i
$ e8 D  v: w( b" A6 u1 W9 L6 x) C1 f# W. G. c- ]
B 基于对话框的命令在创建时会自动产生同名的.CATDlg文件,与基本对话框不同的是, 对话框 文件中定义了变量  int    m_FirstTime; 通过变量控制对话框对象的实例化。其他实现方式与基本命令相同
9 ~3 E+ ?- D" W2 F2 [- c6 D3 `. S6 Z* G; a- C: J0 d( i* Y
- w. w# I* d' i0 G7 ~; @$ h. q* U
2 c( g2 o6 |: P
; u/ V. H& n* @5 x4 ?( F
/ B. i# a4 I" F- [7 [# X5 ^# f- H
C  状态命令在CAA交互式开发过程中的重要内容,比如需要对视图中模型进行交互选择时,就用到该类型的命令。+ g2 m  K7 V6 O
% D1 `+ @* J! s- p
用状态命令启动对话框时,同样方式同1>。: O$ f9 ?) Q3 {6 H" Z
5 p) ?& e( D7 A$ P4 ~1 r, x
pDialogC = new DialogC();
: D4 ^5 F- V5 @" }2 @3 `3 d3 ]* n! ~' y" p( \4 W7 W
       pDialogC->Build();" L$ a8 @4 ~7 D; c
8 W" @( u5 [' k" p3 r8 U8 s% R+ E
       pDialogC ->SetVisibility(CATDlgShow);5 ?) l. x- @& x# }/ V) ~

. H2 J7 N  O: _3 x7 z$ [- Y8 X
* c( x! [) }* N( |
5 [$ w: {4 {) g. H三种命令用法总结
5 i9 a1 i) i' U& C( C) B. E! `0 s8 L
基本命令(Basic Command):无需选择对象或输入数值,如加载特征库。用于启动对话框时可以有或者没有输入,无需选择对象。3 Q; P" O- C  f
# W$ e  X3 ]! I+ X7 B9 \& _
基于对话框命令(Dialog-Based Command):无需选择对象但需输入数值,如根据输入的坐标值生成点。) V2 j$ c7 t% n& V3 v& K' Q5 s
7 u+ b& i9 F  E6 j/ e  `4 U
基于状态命名(CATStateCommand):需选择对象,可有或没有面板。只有这种类型的命令才能进行undo管理。4 c- u- _4 r1 M8 g* Q( n
4 F( S$ g  y1 O* a% {) q
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了