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

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

[复制链接]

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

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

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

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

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

x

& l8 b& J$ B: V6 B  Y- v( q8 ~# J* o, z' m) k
A Dialog Basic Command (对应案例中对话框 DialogA DialogACmd )
1 d, E% F& z0 L2 V2 j* E9 U' ?1 e
1 U" @( C* b3 o6 i8 {" s6 n# }1 b" V- v
步骤:9 P# Z1 F& f% s; z! \/ _4 I
: `# A( }' J4 ?. @9 D
1 创建普通对话框 :如案例中的DialogA,拖拽控件资源进行对话框布局,并保存。可以查看DialogA.h和DialogA.cpp文件中添加了对控件的声明和定义。
9 c5 G  f7 e" x9 V
: U- g0 O5 d) ^3 |7 V* v0 |, N) c2 b* j* D3 Q! i

! y3 r, |+ e, X" G( ~' SFile ->Add CAAV5 Item -> CATIA Resource ->Dialog
; u+ m* p) Y/ @" {; R9 I3 x/ f4 {/ d$ K
/ g. E* _+ D, V& L
* a6 F* B& |! y& a: V$ T) b. f
2 创建普通对话框基本命令 : 1 ~* e# `' p6 U! F. I

( B9 e6 {# f  V9 \; PFile ->Add CAAV5 Item -> CATIA Resource ->Dialog -> Basic Command
5 i& K0 v' I+ q6 d/ F" J& |8 j4 A# D1 u9 w. {/ m
3 命令驱动对话框
' I6 s9 ^% ?3 F: j9 U( c8 Q3 ?& Q8 M* `6 U3 E4 D
创建命令文件后,创建对话框实例。包含对话框DialogA头文件#include” DialogA.h” ;在DialogACmd.h文件中声明DialogA类对象pDialogA,在DialogACmd.cpp文件的构造函数或者Activate函数中添加代码
/ m' K& e/ W# h! H$ `4 _+ a& r6 s  o
% `# ~3 w$ n! v& _+ r. epDialogA = new DialogA();$ I. h2 p( W. y& e  x

5 r3 M( V: N, B! T9 w         pDialogA->Build();
& h8 V& R" D/ X0 `1 ~6 z
7 t" ]. |( W3 K) L5 Q) y  pDialogA->SetVisibility(CATDlgShow);8 E/ G5 R  T! D- m" t; v

" B% d& y! j! C2 b4 关联工具条、按钮或者其他命令,本例中关联工具条6 M  r) c) Z* U7 V% v
, a/ H# [- J* V3 h$ g
建立工具条与命令的连接,通过命令文件启动对话框。
. y9 M" e4 b( W1 U# m4 {4 k& R9 U+ {& w: d6 R$ [9 J
添加DialogTest  ,DialogACmd; O( ~$ m$ E8 H! v' B
  v1 G! |3 A) a$ ~1 [9 D5 R
$ z7 p" I9 ~" B) g2 Z) i! ?% G
& S& O; A2 D, d4 p& F+ w, o; q

2 a6 d& H& f6 r) G: x: m: T( }& O8 H1 [$ m& ~% m
  Dialog-box based command 对应案例中的DialogB.CATDlg ,DialogB.h,DialogB.cpp.  Y; H8 [6 E6 t/ T

3 z0 I( O, }8 s5 k8 S- b: P  K$ |8 t0 Z
B 基于对话框的命令在创建时会自动产生同名的.CATDlg文件,与基本对话框不同的是, 对话框 文件中定义了变量  int    m_FirstTime; 通过变量控制对话框对象的实例化。其他实现方式与基本命令相同  v* ~6 P: ~1 _4 [' T, k
" \! z4 P% P% {; J0 |! s1 f1 ]' k

2 M: s+ u! n& I6 Z8 v7 u* U4 X+ k- W. K
& H* L) d0 a6 w- ?, _4 F' a; t
! A' V7 b8 W$ \: G4 |, T& ]1 K  e: `1 e6 M5 x' w/ A4 [
C  状态命令在CAA交互式开发过程中的重要内容,比如需要对视图中模型进行交互选择时,就用到该类型的命令。
9 F" s% G6 I& c. a' s& [
) @; t& p: ]/ D3 Q9 k+ O用状态命令启动对话框时,同样方式同1>。( \. G4 N+ z" M- o+ ~: e
9 a, M" A4 n2 s1 v& [  Y$ _
pDialogC = new DialogC();
0 g- ^! O4 n9 w  y! y
) O. o, H" Z' Z! ]" `       pDialogC->Build();. T9 y- v; [! l! d, J. ~

3 w1 J) C, T" v" R& d, u5 e       pDialogC ->SetVisibility(CATDlgShow);/ {6 q% f# y! _: G
" r" S# O! T4 L

3 s8 a/ _& K- x+ O5 b- o
: H$ \7 _; o  N& N# l( z三种命令用法总结
+ g) T2 {2 c2 N9 ]$ Z; w2 f" ~( S7 k% R0 r! k' N" {+ n( h
基本命令(Basic Command):无需选择对象或输入数值,如加载特征库。用于启动对话框时可以有或者没有输入,无需选择对象。7 g' @( K1 o* |. j& s8 f% h

: |) b! L0 h5 b% ?  o基于对话框命令(Dialog-Based Command):无需选择对象但需输入数值,如根据输入的坐标值生成点。. t/ ~. Z+ M( s
9 q$ h, {5 i" X. D0 g, ]0 R
基于状态命名(CATStateCommand):需选择对象,可有或没有面板。只有这种类型的命令才能进行undo管理。( }, k1 S: P2 ^0 O
1 ]" M% e1 G* w0 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二次开发专题模块培训报名开始啦

    我知道了