WEB开发网
开发学院图形图像AutoCAD 基于CATIA的界面二次开发方法与实例 阅读

基于CATIA的界面二次开发方法与实例

 2009-06-05 10:09:36 来源:WEB开发网   
核心提示: 生成的新的工作台2、 添加工具条及按钮首先创建按钮的描述类CAAAfrGeoCreationWkb,派生于CATBaseUnknown类,基于CATIA的界面二次开发方法与实例(4),CATBaseUnknown是创建用户界面并实现界面的基类,所有的接口都是从IUnknown/CATBa

生成的新的工作台

2、 添加工具条及按钮

首先创建按钮的描述类CAAAfrGeoCreationWkb,派生于CATBaseUnknown类。CATBaseUnknown是创建用户界面并实现界面的基类,所有的接口都是从IUnknown/CATBaseUnknown继承的。这个类中建立了两个函数分别为CATCmdWorkbench *的CreateWorkbench()函数和无返回值类型的CreateCommands()。前面的函数是用来实现顺序插入工具条、按钮图标以及菜单,后面的函数是实现对插入按钮以及菜单和响应函数的关联。

在CreateWorkbench()函数中用到了宏NewAccess(className,variableName,objectName)。CATIA的工作场(workshop)或者工作台(workbench)可以被看作是一个入口的集合包,使用NewAccess宏可以创建一个这样的入口。使用SetAccessChild(variableName,childName)以及SetAccessNext (variableName,nextName)这两个宏则可以连接入口。其中className表示被创建类的类型,包括以下几种类型:CATCmdContainer,CATCmdWorkshop,CATCmdSeparator,CATCmdStarter。下面就是创建了一个按钮的容器,也就是工具条,并在其中添加按钮的部分代码。

NewAccess(CATCmdContainer,pCAAAfrTB1EltTlb,CAAAfrTB1EltTlb);//创建工具条pCAAAfrTB1EltTlb

SetAccessChild(pCAAAfrGeoCreationWkb, pCAAAfrTB1EltTlb); //工具条加入工作台

//创建按钮cmd1,并设置其响应宏为CAAAfrCmd1Hdr,最后将其加入工具条TB1中

NewAccess(CATCmdStarter,pCAAAfrTTB1EltCmd1Str,CAAAfrTTB1EltCmd1Str);

SetAccessCommand(pCAAAfrTTB1EltCmd1Str,"CAAAfrCmd1Hdr");

SetAccessChild(pCAAAfrTB1EltTlb,pCAAAfrTTB1EltCmd1Str);

接下来绘制一个图标,并在CAAAfrGeoCreationWkbHeader.CATRsc中将其关联,具体如下,则cmd1按钮显示的是CAACmd1.Bmp图标。

上一页  1 2 3 4 5 6 7  下一页

Tags:基于 CATIA 界面

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接