族表常用于螺栓、螺母等标准件的系列化设计中。本文介绍VB API二次开发中访问和修改族表的方法。
VB API中使用IpfcFamilyMember类表述一个包含族表的模型,记录了表头以及每个实例的信息。IpfcSolid类都继承自该类,而IpfcModel类继承自IpfcSolid类,故在程序编写过程可以通过强制类型转化的方式将获得的IpfcModel转换为IpfcFamilyMember再进行族表操作。
尽管微软已经开始边缘化Access,但是Access作为单机小数据库来说,仍有其自身的优势,本文还是介绍下如何在Toolkit二次开发使用Access,数据库采用ADO接口进行访问。
使用VBAPI做了一个比较大的工具,实现批量参数处理、批量关系处理、批量格式导出、批量单位转换、批量旧版本删除、批量导出族表实例以及批量转换图框等7大功能。程序采用VS202019和CREO2.0(M060)进行编译,源码换个引用重新编译应该可以支持对应的版本。
使用toolkit做了一个一键随机着色的功能,其实这个功能已经很多人做了,只是练个手。里面遇到个坑,如果装配体中有元件已设定了外观则着色无效,需要首先清除外观。清除外观只能用宏实现,而且包含了点击确定对话框。这里利用以前的文章进行了宏的高级操作,把宏的运行放到了自定义代码前。代码也公开了,需要的人可以随便根据自己的环境修改编译。
二次开发时有时可能需要在模型中存储自己程序的相关信息,使用外部数据(External Data)可以让程序将一些信息保存到模型文件中。外部数据通过四层进行描述,顶层为IpfcExternalDataAccess类,首先访问模型的这个对象用来判断模型中是否存在外部数据。第二层是IpfcExternalDataClass类,每个二次开发的程序都可以通过创建IpfcExternalDataClass类的对象建立自己的外部数据。IpfcExternalDataClass类可以包含多个IpfcExternalDataSlot用于存储相关数据,而每个IpfcExternalDataSlot对象则可以包含多个IpfcExternalData对象。IpfcExternalData可以存储整形、浮点、字符串三种不同的数据类型。对于访问外部外部对象以及可存储的数据对象类型,官方文档给出结束如下:
使用MFC二次开发CREO时,通常我们会使用设置字符集为多字节进行编程。这样编程好处是非模态对话框中中文输入不会乱码,但是带来的问题是对话框显示的是老式的win32界面,无论是与当今的系统界面还是CREO界面均不搭。本文介绍如何在UNICODE下设置非模态对话框控件中文输入。