CATIA CAA二次开发专题(四)------创建自己的Addin
牛刀小试之:我的Addin
通过Addin可以在已有的Workshop,workbench中插入命令,对话框等交互式界面,经常使用到。
建立Addin的基本过程:
(1)、建立Workspace
(2)、建立Framework
(3)、定义Locate Prerequisite Workspaces
(4)、建立Module
(5)、修改程序代码,添加CreateCommands和CreateToolbars函数
(6)、建立命令响应对话框Dialog,并编写程序代码。
(7)、修改IdentityCard.h文件,加入已用API所属的Framework
(8)、修改Imakefile.mk文件,加入已用API所属的Module
(9)、用mkmk编译程序,并更新运行视图。
上述(1) 至 (4)同前,毋庸赘述。
下面的操作,请按图索骥。
(4)在当前module中,添加component
之后显示完成信息。下面是之后的工作区结构:
(5)修改相应的程序代码。
首先,在MyToolbar.h中增加包含文件:#include "CATCmdContainer.h"
在类定义中的public的析构函数后,加入两个函数的声明:
void CreateCommands();
CATCmdContainer* CreateToolbars();
然后再MyToolbar.cpp中添加:
在头包含文件部分增加:#include "CATCommandHeader.h"和#include “CATCreateWorkshop.h"
在包含文件之后声明命令声明的宏:MacDeclareHeader(MyToolbarHeader); 这个很重要。
在类函数的实现部分添加CreateCommands和CreateToolbars函数:
这里我只声明了一个命令,可以根据需要增加。需要注意构造函数:MyToolbarHeader的参数:
第一个是部件的名称,第二个是所在的模块,第三参数是要执行命令的实现类名,第四是命令参数。
CreateToolbar函数中,创建一个工具条和一个菜单项。(可以只创建其一)。
(6)修改需要添加的先决部件Framework。直接在文件IdentityCard.h中添加或通过菜单CAA5 Workspace->Define
Prerequisite Frameworks...添加。
修改Imakefile.mk文件,添加需链接的framework,如下图:
至此,准备工作完成。
点击菜单 生成->mkmk完成编译和链接。菜单:CAAV5 Workspace->Create/Update Runtime View更新Catia显示。
菜单:窗口->Open Runtime window。出现命令行: 输入cnext
现在,可以在给工具条和菜单添加命令了。
(6)添加命令
进入菜单:文件->CAAV5 Item->CATIA Resource->Command...
这里的命令名要注意,和之前在用Create Commands创建命令时一致。不同则修改为一致。
点击OK完成。然后就可以编辑编辑对话框。和VC差不多,添加Label,Button等,给按键添加响应函数等。
注意给Cancel,关闭窗口键添加响应函数:SetVisibility(CATDlgHide);RequestDelayedDestruction();
修改IdentityCard.h: 添加AddPrereqComponent : Dialog
在Imakefile.mk中添加模块:DIOPANV2
(7)编译,更新显示。
成功!!!
CATIA CAA二次开发专题(四)------创建自己的Addin相关推荐
- CATIA CAA二次开发专题(一)------明知山有虎
开局:进军一个新领域 最近接到公司新的开发任务:基于DASSAULT CATIA CAA的二次开发,完成一个焊缝的生成和管理插件. 长期进行CATIA的授权管理软件开发,但是一直没有进行过CATI ...
- CATIA CAA二次开发专题(九)---3DE平台的特征树遍历
因为应用开发需要移植到3DE平台,所以又开始了新的征程. 在3DE平台上,因为使用中心数据库存储设计文档和安全原因,很多V5平台的特征及接口做了很大的 改变,给刚刚有点熟悉V5平台的我,很大的困扰.只 ...
- CATIA CAA二次开发专题(三)---------创建自己的Workbench
牛刀小试之:我的Workbench 开发环境已经建立起来,该试试身手了. 参阅大量网络教程,取长补短,完成了第一个交互式测试项目,建立一个workbench. CAA交互式开发的一般顺序: (1).建 ...
- CATIA CAA二次开发专题(十)---迷宫中穿行(终结篇)
从项目开始至今已有十个月,终于接近尾声,初步通过验收,接近交付阶段,所有必须解决的难题基本都得到解决. 回首来时路,感概万千,个中艰辛,非亲历不能言. 在CATIA/3DE CAA 开发,除自带开发 ...
- CATIA CAA二次开发专题(八)---自定义特征模型
随着开发的深入,最后会涉及自定义特征模型的问题,本文叙述一个工具软件的使用. CAA自定义特征对象的方法,可以通过工具:CdtfctEditorAssistant.exe完成. 通过osm文件,生成C ...
- CATIA CAA二次开发专题(六)---约束关系分析
在二次开发过程中,有时需要获取产品树中的约束关系信息,以进行部件关系分析.下列程序片段,可以获取并显示产品 树的约束信息.这里,只给出主程序. #include "CATBaseUnknow ...
- CATIA CAA 二次开发资料(PDF).rar
05.16.02.MapInfo_MapX_Mobile_5.0-CYGiSO.zip aiss902.rar AutoNest_v1.6_for_AutoCAD.rar Catia CAA 编程示范 ...
- CATIA CAA二次开发视频教程 CAA资料
CATIA CAA二次开发视频教程 CAA资料教程-560分钟 链接:https://pan.baidu.com/s/1Sa2vGcIkoaZYQWdMN7ombg 提取码:yn4a
- CATIA CAA二次开发视频教程 CAA资料教程
CATIA CAA二次开发视频教程 CAA资料教程 链接:https://pan.baidu.com/s/1B7TcxhDl8KPphDtJwQ1WzQ 提取码:tmum
最新文章
- (三)AJAX基本介绍和简单实例03
- psp用ps1模拟器_电脑上ps1和fc模拟器资源下载,包含当年ps1上的西游记和霸王的大陆复刻版...
- 成功解决PermissionError(权限拒绝解决答案集锦): [Errno 13] Permission denied: ‘f:\\program files\\python\\python36\
- QEMU KVM libvirt手册(4) – images
- c++ 原子操作 赋值_Volatile深度剖析-原子性
- ブランド (brand) 品牌,商标
- Spring Cloud之Feign客户端调用工具
- Java自学 day02
- MyBatis-Plus 分页查询以及自定义sql分页
- 卡卡通小熊win7桌面主题+非主流win7主题下载
- macOS Ventura 正式版发布 苹果官方详解macOS 13 Ventura正式版
- java 拼音的模糊匹配 算法_c#拼音模糊匹配算法
- 使用pdfFactory Pro虚拟打印机给文档加上水印
- IE8 “Automation 服务器不能创建对象”问题解决方法
- 软硬一体的算法实践,阿里云如何以算法实现场景 “再创新”?
- codeup3692 星期英文单词
- python moving average_Python实现滑动平均(Moving Average)的例子
- oracle缺少有右括号,oracle ORA-00907错误:缺少右括号
- 【180927】美女拼图游戏源码
- 利用网络分析工具对城市管道网络进行分析 对一个物流公司的运送路线进行合理的规划
热门文章
- JavaScript 10进制转换为类似‘0x00d5’格式的16进制
- 用Dynamips构建能够与真实机器通信的IPSec ***环境
- 2023年Node.js全网详细下载安装的最新教程
- 织梦网站频道管理员不能添加栏目
- 自定义resttemplate的ErrorHandler
- JavaScript网页特效-“渔夫打鱼晒网”程序设计
- 日期转换(正推与倒推)
- java中输入日期_Java中的日期操作
- Qt/C++ 加载数据库出现qt_sql_default_connection提醒
- pycharm可视化网页编程_pycharm + git+gitlab的可视化界面操作