admin 发表于 2017-5-8 16:41:46

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



A Dialog Basic Command (对应案例中对话框 DialogA DialogACmd )


步骤:

1 创建普通对话框 :如案例中的DialogA,拖拽控件资源进行对话框布局,并保存。可以查看DialogA.h和DialogA.cpp文件中添加了对控件的声明和定义。



File ->Add CAAV5 Item -> CATIA Resource ->Dialog



2 创建普通对话框基本命令 :

File ->Add CAAV5 Item -> CATIA Resource ->Dialog -> Basic Command

3 命令驱动对话框

创建命令文件后,创建对话框实例。包含对话框DialogA头文件#include” DialogA.h” ;在DialogACmd.h文件中声明DialogA类对象pDialogA,在DialogACmd.cpp文件的构造函数或者Activate函数中添加代码

pDialogA = new DialogA();

         pDialogA->Build();

pDialogA->SetVisibility(CATDlgShow);

4 关联工具条、按钮或者其他命令,本例中关联工具条

建立工具条与命令的连接,通过命令文件启动对话框。

添加DialogTest,DialogACmd





Dialog-box based command 对应案例中的DialogB.CATDlg ,DialogB.h,DialogB.cpp.


B 基于对话框的命令在创建时会自动产生同名的.CATDlg文件,与基本对话框不同的是, 对话框 文件中定义了变量int    m_FirstTime; 通过变量控制对话框对象的实例化。其他实现方式与基本命令相同





C状态命令在CAA交互式开发过程中的重要内容,比如需要对视图中模型进行交互选择时,就用到该类型的命令。

用状态命令启动对话框时,同样方式同1>。

pDialogC = new DialogC();

       pDialogC->Build();

       pDialogC ->SetVisibility(CATDlgShow);



三种命令用法总结

基本命令(Basic Command):无需选择对象或输入数值,如加载特征库。用于启动对话框时可以有或者没有输入,无需选择对象。

基于对话框命令(Dialog-Based Command):无需选择对象但需输入数值,如根据输入的坐标值生成点。

基于状态命名(CATStateCommand):需选择对象,可有或没有面板。只有这种类型的命令才能进行undo管理。

页: [1]
查看完整版本: Catia CAA 三种命令启动对话框的方式和区别