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

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

[复制链接]

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

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

admin 楼主

2017-5-8 16:41:46

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

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

x

5 T+ C9 @( I  T  C- f0 J: x
* F5 S% X8 Q' e; j. JA Dialog Basic Command (对应案例中对话框 DialogA DialogACmd )! k1 H& }2 y3 Y$ o1 `7 |0 ^

1 {0 [6 o9 J( G
1 K7 a. g% L+ K步骤:9 b; y/ d. v: `1 E: R! z
  g8 ]7 n7 O4 w; o1 `; x2 x
1 创建普通对话框 :如案例中的DialogA,拖拽控件资源进行对话框布局,并保存。可以查看DialogA.h和DialogA.cpp文件中添加了对控件的声明和定义。
) M& R. |3 b3 l) o, u( G/ c' g8 }. T4 l" ~6 i

' E) ?- T; M: ?  X5 Y5 M+ v- a8 d* ]: T# h
File ->Add CAAV5 Item -> CATIA Resource ->Dialog; J$ Z  f5 _9 R% B& Y
$ p5 G1 C% q1 d; Y' T

4 V% l, H: K; \5 x: W2 O9 w5 f3 m/ l7 s, F
2 创建普通对话框基本命令 : ' h. b8 R+ K7 @$ S9 R( H( ^# f2 _

9 u2 g, E4 s0 rFile ->Add CAAV5 Item -> CATIA Resource ->Dialog -> Basic Command
. i* y; L( T4 D5 p8 ]& l: j9 v0 u! T/ i2 h
3 命令驱动对话框
8 F# P8 @" M: V) n( `0 }
4 U1 N+ y3 d0 n9 ]; K; {8 n7 J2 f创建命令文件后,创建对话框实例。包含对话框DialogA头文件#include” DialogA.h” ;在DialogACmd.h文件中声明DialogA类对象pDialogA,在DialogACmd.cpp文件的构造函数或者Activate函数中添加代码
8 Z+ l. x2 N% U! s9 ~1 r) Q
* K8 A4 Q3 }  M  f$ KpDialogA = new DialogA();7 b' O7 H) |6 Z
% t( e# c& _1 @) f
         pDialogA->Build();: ]" R3 h6 x$ N

) ~$ F* B) O* R0 z  pDialogA->SetVisibility(CATDlgShow);  g1 G& g2 W7 c+ m& ~6 i

6 ^6 L  |- O, f5 v) x4 关联工具条、按钮或者其他命令,本例中关联工具条
+ d5 }6 z/ \6 ~! b! f. h( n! W/ [4 x, K! G
建立工具条与命令的连接,通过命令文件启动对话框。
" M9 d( {- {& k! f, }; \
! K$ x8 C" g4 j添加DialogTest  ,DialogACmd
8 q/ G* @: P/ Y& W& p+ v! f
$ }! k! G0 n( k% `3 g. [% F
+ C  F8 Y! }% ~% N' q( r; R, ]0 C7 t1 J: g- A/ [& Q6 O
6 i( t- }' O3 K/ o

% n) [1 Z% ?) c  Dialog-box based command 对应案例中的DialogB.CATDlg ,DialogB.h,DialogB.cpp.
0 ]3 y; }1 b/ a, ~3 Z4 w# X1 [( j3 [0 r0 c/ k
' N0 e) T9 H0 f) ]& t% f  ~& l
B 基于对话框的命令在创建时会自动产生同名的.CATDlg文件,与基本对话框不同的是, 对话框 文件中定义了变量  int    m_FirstTime; 通过变量控制对话框对象的实例化。其他实现方式与基本命令相同
$ u& x+ s. b0 G( w
( r2 R% k+ h5 l; Q0 z8 S
( V9 z$ Z* F/ m" \$ }# h
- m" H2 ]* M% j
7 B: T, P. N0 D9 }
2 K7 h+ y/ X$ A% w+ [1 rC  状态命令在CAA交互式开发过程中的重要内容,比如需要对视图中模型进行交互选择时,就用到该类型的命令。
2 j- f- ]+ J* _6 o4 o' L3 R. n# i4 K" A) l; J: u7 B+ |
用状态命令启动对话框时,同样方式同1>。. {% w" Q' Q. k0 a5 ]5 g

  |( L$ s8 H- K1 R- [  S& C7 W: ypDialogC = new DialogC();3 d: O* o4 R! l
7 s  [5 P  L5 X
       pDialogC->Build();3 ?2 x. @4 x0 W$ y" M

' i. m& y+ X/ V  E0 k       pDialogC ->SetVisibility(CATDlgShow);- \- B6 V; {- V1 ?0 i& k

% J+ ~. b. k' Q5 l( E: ?! Q/ }3 v2 v, \/ r+ Z
& _  ?% ~% T- e* v0 a3 U# a
三种命令用法总结
# Z4 q, `4 Q9 V! L+ e2 [
2 R+ H. T6 v, q基本命令(Basic Command):无需选择对象或输入数值,如加载特征库。用于启动对话框时可以有或者没有输入,无需选择对象。# W0 @/ x  q% d0 C. A3 H) F) p/ I
) q2 t5 t0 K0 C# s# Z* S5 d% A
基于对话框命令(Dialog-Based Command):无需选择对象但需输入数值,如根据输入的坐标值生成点。
9 S0 v  g7 [% O  `1 k, v- k, }, Z  {! R" q" ^" B  k7 ~
基于状态命名(CATStateCommand):需选择对象,可有或没有面板。只有这种类型的命令才能进行undo管理。! R) ~' `$ F/ U5 o! m# i. ?

# N# f% Y. ~4 S
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了