PLM之家PLMHome-工业软件与AI结合践行者

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

[复制链接]

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

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

admin 楼主

2017-5-8 16:41:46

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

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

x

/ E% @5 ~: a6 n- n, i0 ?: ]  p" J6 W0 A5 r4 c0 v
A Dialog Basic Command (对应案例中对话框 DialogA DialogACmd )9 k* \( G. h; F0 v! p; v) I
8 s* a' l7 W9 T; L( S" y# N! h

( J6 L* b. l; N% v; b6 h步骤:# A# Q, x# W' e5 e+ P- e& N

. L: U, r" Y, R  l: D0 k1 创建普通对话框 :如案例中的DialogA,拖拽控件资源进行对话框布局,并保存。可以查看DialogA.h和DialogA.cpp文件中添加了对控件的声明和定义。 $ X# L7 `* }% I
* L, ^; l( S; F5 M2 }7 T

# e' t) O; g" N8 c
6 r7 ]0 d9 y4 J" ~! jFile ->Add CAAV5 Item -> CATIA Resource ->Dialog* L6 d5 Z9 r: l
7 i% e; I+ ?+ L7 Z* m; `) e

' S8 \& z2 T* F! o2 K" v1 ~5 Q4 @8 c4 Q- c) C% ]
2 创建普通对话框基本命令 :
# z4 w% q3 {% z  r9 G* s5 i/ x5 U" R) n) V: G
File ->Add CAAV5 Item -> CATIA Resource ->Dialog -> Basic Command5 `3 p- f; ?" F+ j1 o) z; t5 [9 E
0 e0 [, a6 n# z4 @, t
3 命令驱动对话框7 k; A: m, a$ [/ i- c
+ v- |  G% c$ ]  E* `, A: g5 Y6 K
创建命令文件后,创建对话框实例。包含对话框DialogA头文件#include” DialogA.h” ;在DialogACmd.h文件中声明DialogA类对象pDialogA,在DialogACmd.cpp文件的构造函数或者Activate函数中添加代码
! \/ }# H& H# n% C
6 H. b! R2 K: L9 [4 zpDialogA = new DialogA();. y  B  [. R9 [7 A

1 z7 |# r0 u/ C$ k. W         pDialogA->Build();/ o& [2 ?; o& r; ]! M  j
, U/ v" Q) W! Z
  pDialogA->SetVisibility(CATDlgShow);
" D: p5 |0 c& N. o0 d4 x6 u
1 s1 x% U" f. J& @& E8 U, |; \4 关联工具条、按钮或者其他命令,本例中关联工具条
0 ~* \" z( {8 Z" E6 T* z( m! a
8 l4 @4 v# _# @1 ~( c% ]" l9 ^1 F建立工具条与命令的连接,通过命令文件启动对话框。. r" ~' `. \6 L4 T1 u

1 o' K  X% @6 f3 X添加DialogTest  ,DialogACmd
( e7 S: s1 f* L  {
0 y4 ^( H! Q. N6 a, ~- m; a- x8 _& i+ s5 l
+ V' A6 A7 ~# z) B) I

$ c: u) G9 p% P3 f5 R
5 n( X6 O9 \$ l$ E6 s4 V  X# J2 M  Dialog-box based command 对应案例中的DialogB.CATDlg ,DialogB.h,DialogB.cpp./ [  u: H; n& s$ ?4 ~8 c) g2 {

/ Z3 }' w9 \3 k: V8 n. m" s
& B! O0 z% E  o4 k5 Y5 U# |B 基于对话框的命令在创建时会自动产生同名的.CATDlg文件,与基本对话框不同的是, 对话框 文件中定义了变量  int    m_FirstTime; 通过变量控制对话框对象的实例化。其他实现方式与基本命令相同6 a9 L" I. Y  X8 V" ?

! Y, k/ o4 _2 H2 L
, x& X) O" E2 [) R1 `9 [+ W5 W
+ o% d) _. i% K, t# }  d4 D

8 T1 @7 I! H& S8 SC  状态命令在CAA交互式开发过程中的重要内容,比如需要对视图中模型进行交互选择时,就用到该类型的命令。3 [7 y; g4 ]( B  y' ^" f0 P- m
7 a; Q* ^) r( Q  M, K( p
用状态命令启动对话框时,同样方式同1>。
9 r0 N* y& C& c0 Q
  x( W: G5 _& c; @pDialogC = new DialogC();
7 _. e, A/ e+ e) @& Z" W
0 ~4 h" Z7 z6 n, F( D7 }       pDialogC->Build();
; l: w8 z$ C, G
) K1 D" o. w( _2 e       pDialogC ->SetVisibility(CATDlgShow);" h) m3 `5 P1 g4 x: ^1 i
/ I3 _. Q: m8 u3 t6 Y$ u3 h' f  c
# ?" Q2 L: }; _/ t: q! `. D2 G6 a
: R9 H8 p: h) ^/ y* A
三种命令用法总结
& U- ?8 R6 y( C/ O9 O- c! W
# O0 j4 g5 y+ P# G5 I1 d( g( R基本命令(Basic Command):无需选择对象或输入数值,如加载特征库。用于启动对话框时可以有或者没有输入,无需选择对象。- f5 j1 d- B6 z7 X6 C' G8 S( V! U5 L
" [2 G# i8 z+ s! ]3 _0 V7 ?
基于对话框命令(Dialog-Based Command):无需选择对象但需输入数值,如根据输入的坐标值生成点。# o* X, R& q9 ^, n- R

) W( \* C. X& T基于状态命名(CATStateCommand):需选择对象,可有或没有面板。只有这种类型的命令才能进行undo管理。
9 F8 v1 N, Y$ A3 m; Z9 L% j8 n
' p* O; }) n# t$ y
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了