UG软件开发应用.ppt_第1页
UG软件开发应用.ppt_第2页
UG软件开发应用.ppt_第3页
UG软件开发应用.ppt_第4页
UG软件开发应用.ppt_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二部分UG软件的开发与应用二次开发涉及标准零件库 行业产品特征库 复杂零件的自动生成 零件成型与分析的集成 典型产品的专家系统等领域 使企业拥有的UG软件本土化 UG Open二次开发工具UG OpenGRIPGRIP GraphicsInteractiveProgramming UG OpenAPIAPI ApplicationProgrammingInterface 辅助开发模块UG OpenMenuScrip辅助开发模块UG OpenUIStyler UG Open套件的相互关系图 利用UG Open应用程序和工具可以完成 通过UG OpenAPI二次开发模块可以对UG中的物体模型显示界面进行交互操作 创建或者修改用户定义的对象UDO UserDefinedObject 包括对对象和相关对象的相互联系关系的管理 提供一种更新和显示用户自定义对象的方法 定制个性化的UG界面 方便用户调用第三方的应用软件 添加新的UG Open技术 并将其与UG集成 2UG OpenGRIP语言UG OpenGRIP语言的应用 主要包括以下几个方面 同类零件编程特有的几何功能计算和分析绘图零件的标准化文件管理数据访问 2 1GRIP语言概述2 1 1GRIP语言开发环境GRADE利用建立UG OpenGRIP应用程序的主要步骤 1 编写GRIP程序 GRIP源程序的后缀为grs 2 编译GRIP源程序 在GRADE GripAdvancedDevelopmentEnvironment 中进行编译 调试 生成GRIP源程序的以gri为后缀的二进制文件 3 链接 在GRADE中 将编译成功后的gri文件进行链接 生成以grx为后缀的可执行程序 4 执行 在UG环境中 执行grx程序 建立UG OpenGRIP应用程序的主要步骤 2 1 2GRIP语句的格式1 陈述格式 StatementFormat 陈述格式的GRIP命令主要用于实体的生成和编辑 其由主词和辅词组成 主词是GRIP语句的主要命令 如LINE CIRCLE DELETE CALL HALT等 辅词是主词的修饰词 如ANGLE ARROW START END等 它通常放在 主词 之后 LN1 LINE 0 0 0 10 0 0LN2 LINE PARLEL LN1 YSMALL 1 0其中 LINE为主词 PARLEL和YSMALL为辅词 GRIP中常用的几个辅词 CENTER中心READIUS半径DIAMTR直径START开始 角 END终止 角 ON在 上TANTO相切于PROPTO垂直于PARAEL平行于VECT矢量 三个分量 ANGLE角度 以度为单位 DELTA增量ENDOF 的端点 INTOF 的交点CSYS坐标系AXIS轴SIZE边数 尺寸ORIGIN原点THRU通过LEFT左边RIGHT右边CNT计数NOTRIM不修剪DELETE删除BLANK隐藏 2 GPA符号格式 GlobalParameterAccessSymbolFormat GPA是全局存取 GlobalParameterAccess 格式的缩写 用于访问UG系统中各种对象的状态设置和参数 一个GPA符号格式最长6个字母 且以 开头 每一个GPA符号都有确切的含义 或者与系统总体参数相连 或者与一个常数相连 并且有一个给定的存取类型 数据类型以及数据范围 例如 DENS操作为访问线宽 存取类型为读 写 数据类型为N 范围为大于或等于零 再如 ENTCLR red将系统设置实体颜色为红色 3 EDA符号格式 EntityDataAccessSymbolFormat EDA是实体数据存取 EntityDataAccess 的缩写 EDA符号格式的命令用于访问UG数据库 能够访问各种对象的功能性数据 EDA命令格式的GRIP命令语句 例如 COLOR ln1 YELLOW 将直线ln1的颜色改为黄色 写功能 cd POINT pt1 提取点pt1的坐标值 放入数组cd 3 须先声明NUMBER cd 3 2 1 3GRIP程序的组成1 声明语句部分ENTITY LN1 LN2 LN3 PT 20 实体STRING STR 30 字符串NUMBER A 20 B 2 3 C 2 3 2 数字数组2 初始化语句部分DATA A 10 1 2 3 4 5 6 7 8 9 10 赋值语句DATA STR 30 ThisisagoodGRIPprogram 3 交互语句部分IDENT PICKPOINT ISTR k pt k resp 识别实体GPOS PICKDIRPOINT ISTR k x1 y1 z1 resp 打开点菜单定义点4 过程处理语句部分LN3 LINE 4 4 0 4 NAME LN3 LINETHREE 5 结束语句部分HALT 2 1 4GRIP语言的一些约定1 主词和辅词陈述格式的GRIP命令由主词和辅词构成 例如ln LINE pt1 ANGLE 302 续行号 在GRIP程序中 一行只允许写一个语句 并且每一行允许最多80个字符 如果超过80个字符 则必须在其后使用续行标志 例如PARAM ENTERPARAMA long axis a shot axis b index m m index n n respJUMP 101 hal resp 3 注释行号 语句行 对程序的执行有影响 非语句行 不被译成机器指令 对程序的执行没有影响 如注释行仅起注释作用 以增加程序的可读性 GRIP规定 用 作为注释标记 凡在其后的内容皆为注释 注意 在一个语句后面以 开头的部分是注释 而在续行号 后面的语句也是注释 如 注释举例GRIPSW DECLRV 强制声明STRING file desc 文件描述part file 部件文件名part suffix 4 部件名后缀 4 语句标号标号语句与JUMP 语句 DO 语句等结合 表示程序的执行位置 语句标号是以字母开头的字母或数字的组合 后面再加上一个冒号 例如 下例中的语句标号LAB01 标注了循环体的范围 DO LAB01 IND 1 LENFONECHR SUBSTR LINEX IND 1 LINE2 LINE2 ONECHRLAB01 doloopfinish又如 跳转语句中 表示跳转程序的位置 LD1 GPOS INDWELDLOCATION X1 Y1 Z1 RSJUMP LD1 HLT RS 5 多重选项在GRIP中 多重选择是用花括号 加一些竖杠 表示的 如 POINT SOLID DASH PHANTM CENTER 表示线型有多种选择 可以是实线 SOLID 虚线 DASH 假想线 PHANTM 或中心线 CENTER 用户可任选其一 例如 POINT DASH表示系统将线型设置为虚线 在该语句之后绘制的曲线均为虚线 6 可选项在GRIP中 可选项用方括号 括起来 方括号内的选项表示可选项 你可以选择 也可以不选 如POINT x y z 表示z是可选项 可以用点 x y z 生成一个点 也可以用 x y 生成一个点 默认z 0 7 重复选择重复选择用右上角的 表示 例如MAXF arg arg DATA name value value name value value JUMP lable expression在上面3个语句中 arg 表示若干个变量 value 表示若干个值 lable 表示若干个标号 2 1 5GRIP语言的语法1 变量 1 数字变量s1 5s2 3s3 s1 s2语句中 s1 s2 s3为简单变量 t 1 5n 2 1 3m 3 2 1 语句中 t n m分别是一 二和三维下标变量 2 字符串变量txt mygrip st 1 1 GRIP 3 实体变量p1 POINT 3 1 6p2 POINT 2 4 6ln4 LINE p1 p2 4 变量名的约定变量名长度不超过32个字符 首字符为字母 变量名可以是字母和数字的组合 其中不得含有特殊字符 如 2 变量声明 1 下标数字变量的声明语句格式NUMBER name dim1 dim2 dim3 name dim1 dim2 dim3 其中 name为数字数组变量名 dim1 dim2 dim3为数组的维数 在GRIP中最大的维数为3 2 字符串变量的声明语句格式STRING name dim1 dim2 n name dim1 dim2 n 式中 name是字符串变量名 n表示字符串的长度 n 132 dim1 dim2等是字符串变量的维数 例如 STRING A 24 B 20 A HELLOWORLD B THISISASTRING 3 实体变量的声明语句格式ENTITY name dim1 dim2 dim3 name dim1 dim2 dim3 式中 name是实体变量名 dim1 dim2 dim3是实体变量的维数 例如 ENTITY CIR1 LN1 PT 4 5 3 赋值语句GRIP中的赋值语句有4种形式 一般赋值语句 数组赋值语句 字符串赋值语句 实体赋值语句 1 一般赋值语句c 2 5 3 a t v 3l 2 pai r 2 数组赋值语句x 1 10 5x 2 a cos alpha str1 Wuahn 3 用DATA语句赋值数字数组及字符串也可以用DATA语句赋值 如NUMBER c aa 4 STRING ch 2 24 DATA c 1 0 aa 0 1 2 3 ch helloworld thisisastring 4 实体赋值语句实体赋值语句 即生成一个实体 如ENTITY pt c1pt POINT 0 1cl CIRCLE CENTER pt REDIUS 1 5 START 0 END 180HALTpt和cl是实体变量 表示生成一个点实体pt 坐标为 0 1 并以该点为圆心 作半径为1 5 角度为0至180度的圆弧cl 4 程序控制GRIP语言使用逻辑语句 转移语句 嵌套语句和循环语句进行程序控制 其中转移语句分为无条件转移和条件转移两种 1 无条件转移语无条件转移语句是 必转 语句 使用JUMP关键词 当执行到该语句时 就转向某个语句标号 语句格式为 JUMP Lable Lable HALT 2 条件转移语句条件转移语句的格式为 JUMP lable expression当expression的值为1时 转向第1个语句标号 当expression的值为2时 转向第2个语句标号 依此类推 如CHOOSE CHOOSEoption nextcurve createsurf RESPJUMP rej1 trm 110 RESP上式表示 RESP 1转向rej1 RESP 2转向trm RESP 3转向空语句标号 即不转移 程序向下执行 RESP 4转向空语句标号 即不转移 程序向下执行 RESP 5转向110 RESP 6转向空语句标号 即不转移 程序向下执行 3 逻辑IF语句GRIP的关系运算符有6种 GRIP的逻辑运算式有3个 AND OR NOT 逻辑IF语句的格式为 IF logicalexpression statement例如 IF I J x x dxIF CMPSTER CH DIR 0 DOPENIF A BANDC D PRINT Bothexpressionaretrue IF A 100 x 0IF a 0 JUMP L99 4 条件IF语句条件IF语句的格式为 IF numericalexpression label1 label2 label3 当算术表达式的值0时 转向语句标号label3 例如 IF ASCII ch 65 100 表示当 ASCII ch 65的值0时 转向空语句标号 只有 ASCII ch 65的值等于0时 才转向100 语句标号 5 块IF语句块IF语句是一种多重条件的选择结构语句 块IF语句的格式为 IFTHEN Logicalexpression1Statementblock1 ELSEIF Logicalexpression2Statementblock2 ELSEStatementblock ENDIF说明 块IF语句也可嵌套块IF语句 6 循环结构 当型 循环 当型 循环语句的格式为 STR IFTHEN LogicalexpressionStatementblockJUMP STR ENDIF 直到型 循环 直到型 循环语句的格式为 LOO StatementblockIF Logicalexpression JUMP LOO DO循环 DO语句实现的循环称为DO循环 DO循环的一般格式为 DO LABEL INDEXVARIABLE START END INCREMENT STATEMENTBLOCKLABEL 说明 在DO语句的一般形式中 增量 INCREMENT 是可选项 当该项省略时 循环增量 步长 为1 循环变量 INDEXVARIABLE 的初值 终值 步长等 可以分别是常数 变量和表达式 循环次数可以从循环初值 终值和步长计算出来 一个循环体内又可以包含另一个 或几个 完整的循环 称为循环嵌套 DO循环程序举例 doloop grs 5 输入 输出语句GRIP语言中提供了5种输入 输出命令 即 READ WRITE PRINT FPRINT LSTDEV 1 READ语句的格式READ file LINNO line USING imagestring IFEND label IFERR label variablelistfile 为临时文件通道号 LINNO line 读取行号为line 的数据 USING imagestring 表示所使用的数据格式 IFEND label和IFERR label提供异常处理 前者遇到文件结束 转向一个语句标号 后者读文件发生错误 转向一个语句标号 2 WRITE语句的格式WRITE file LINNO line USING imagestring datalist语句中 file 表示临时文件通道号 LINNO line 表示将数据写入临时文件line 行 USING imagestring 表示输出数据格式 3 PRINT语句格式 输出一行语句 PRINT USING imagestring datalist 4 LSTDEV语句格式LSTDEV用来设置输出设备的状态 LSTDEV CRT LPT OS LPT OS NULL filename REPL 表示输出设备的默认设置是CRT参数 6 子程序调用子程序通过GRIP编译器编译后与主程序相连接 子程序的一般格式为 PROC dummyargumentlist 声明语句子程序主体结束语句 RETURN 其中 dummyargumentlist是哑元 虚参 表 在主程序中调用子程序的命令是 CALL subprogramname argumentlist 其中 argumentlist是与哑元对应的实元 实参 表 7 人 机交互语句 人 机交互语句应用 1 产生UG的点构造子菜单ENTITY l 4 l10 GPOS DefineFirstCorner x1 y1 z1 rspJUMP l10 trm rspl20 GPOS DefineSecondCorner x2 y2 z2 rspJUMP l20 trm rsp l 1 LINE x1 y1 z1 x2 y1 z1l 2 LINE x2 y1 z1 x2 y2 z1l 3 LINE x2 y2 z1 x1 y2 z1l 4 LINE x1 y2 z1 x1 y1 z1 trm HALT 2 给参数赋值 用途 演示PARAM 语句DATA HZDS 12 0 HZN 6 VTDS 25 0 VTN 5 DIA 2 4l10 PARAM RECT HOLEDATA TTLHZDS HZDS NO HORIZ INT HZN TTLVTDS VTDS NO VERT INT VTN DIA DIA RSpJUMP l10 STOP RSpSTOP HALT 8 文件管理 1 建立文件建立一个部件 PART 文件 CREATE PART filespec INCHES MMETER numberlist IFERR LABEL 其中 filespec 为部件文件名 INCHES MMETER是部件文件的计量单位 numberlist是部件文件模型的初始显示边界 Xmin Xmax Ymin Ymax Zmin Zmax 缺省时取默认值 建立一个文本 TXT 文件 CREATE TXT file filespec IFERR LABEL 其中 file 是该文本文件的临时文件工作区号 1 10号 filespec为文件名 IFEER label 为错误信息通道 2 读取文件读取一个部件 PART 文件的GRIP命令 FETCH PART filespec IFERR LABEL 其中 filespec 为部件文件名 IFEER label 为错误信息通道 读取一个文本 TXT 文件的GRIP命令 FETCH TXT file filespec IFERR LABEL 其中 file 是该文本文件的临时文件工作区号 1 10号 filespec为文件名 IFEER label 为错误信息通道 3 保存文件保存部件 PART 文件的GRIP命令 FILE PART filespec IFERR LABEL 其中 filespec 为部件文件名 IFEER label 为错误信息通道 若filespec缺省 系统接受默认值 把当前激活的文件存盘 保存文本 TXT 文件的GRIP命令 FILE TXT file filespec LINNO IFERR LABEL 其中 file 是工作区号 1 10号 filespec为文件名 LINNO在文本文件中自动计入行号 IFEER label 为错误信息通道 2 2GRIP程序应用实例2 2 1字符输出 letter grs 2 2 2实体 六角螺母 生成 nut grs 2 2 3文件应用实例 file1 grs 创建实体并保存2 2 4子程序的调用 vtool sub tool set wcs orient line 调用子程序 演示简单切削加工的仿真 3UG OpenAPIUG OpenAPI是UG软件的一个重要组成部分 它是UG的二次开发工具之一 简单来说 UG OpenAPI是UG与外部应用程序之间的接口 即UG提供的一系列函数和过程的集合 对UG的模型文件及相应的模型进行操作 在UG主界面中创建交互式程序界面 创建并管理用户定义对象 3 1UG OpenAPI的应用范围 1 用户化定制CAD环境提供用户化CAD规范 用户化标准件库 定制用户化CAD界面等 2 开发在UG软件平台上的用户专用软件如CAPP软件 DFA软件 DFM软件 CAE接口软件等 3 开发UG与其他CAD软件的接口CATIA Pro E SolidWork AutoCAD 3 2UG OpenAPI程序的运行模式UG OpenAPI程序能在Internal和External两种不同的环境下运行 1 Internal模式Internal模式的UG OpenAPI程序只能在UG的界面环境中运行 其特点是 执行代码小 连接快 运行结果在UG界面的图形窗口中可见 入口函数是ufusr或者ufsta API程序加载到内存中后 要通过API卸载功能从运行环境中卸载掉 Internal程序的一般格式 include Prototypesexistthisfile Additionalincludefilesasrequired voidufusr char param int retcod intParm len variabledeclarationsUF initialize body 应用主体 UF terminate 2 External模式External模式的UG OpenAPI程序在WIN2000以上版本或UNIX下运行 不需UG环境支撑 External模式适用于不需要图形界面操作的后台运行程序 如打印机 绘图仪等 External程序的一般格式 include Additionalincludefilesasrequired intmain intargc char argv variabledeclarationsUF initialize body 应用主体 UF terminate 3 3UG OpenAPI的函数名称及参数约定1 函数名称的约定 标准名称约定 格式 UF 其中 UF表示UG OpenAPI的函数 area为应用或者模块的缩写 如MODL和DISP分别是UG中modeling和Display功能的缩写 name是被下划线分开的动词和名词 如UF MODL create block1 原有名称约定 格式 uc和uf它代表UG OpenAPIC语言程序 其中 通常是四位数字或者三位数字加一个字母 例如uc1605是一个多重选择菜单函数 2 参数约定语法格式 变量列表 例如 intUF PART open Char part name tag t part UF PART load status t error status 表示加载一个UG部件文件到UG界面中 并设为工作部件和显示部件 3 4UG OpenAPI的数据类型数据类型包括C语言标准数据类型和API的定义类型 API的数据结构命名规则如下 t数据类型 Datetype p t数据类型的指针 Pointertothattype s结构标识 Structuretag u t联合类型 Uniontype u p t联合类型的指针 Pointertoauniontype f t函数指针 Pointertoafunction 例如 下述UF ASSEM options s的数据结构定义typedefstructUF ASSEM options s intload options intpart list Intload substitution UF ASSEM options t UF ASSEM options p t 其中 UF ASSEM options s是结构标识 UF ASSEM options t是该结构的类型定义 UF ASSEM options p t是该结构类型的指针 3 5UG OpenAPI应用程序的开发1 UG二次开发环境的设置 1 安装Unigraphics 选择自定义 进行完全安装 确保ugopen和ugopenpp模块安装在系统中 2 安装VisualC 软件 检查VC目录 确保ugopen awx和ugopen hlp文件 或ugopen v19 awx ugopen v19 hlp 在VC的Msdev common msdv98 tempalte目录下 3 设置绘图单位 默认为英寸 在UG安装目录下的UGII文件夹中找到UG的建模环境设置文件ugii evn dat 将其中的UGII DEFAULTS FILE UGII BASE DIR ugii ug English def改为UGII DEFAULTS FILE UGII BASE DIR ugii ug metic def 4 建立一个用于存放UG二次开发源代码的文件目录 2 创建一个工程文件利用VisualC 的UnigraphicsNXAppWizard创建一个工程文件3 添加用户应用程序在工程文件的CPP文件中的适当位置 添加用户应用程序的相关内容 1 添加用户应用程序涉及到的头文件 2 添加用户函数的声明及调用 3 添加用户函数 4 编译连接生成动态连接库文件 DLL5 进入UG执行动态连接库文件 3 6UG OpenAPI应用举例利用函数UF MODL create block1 创建2个长方体 1 利用VisualC 创建一个应用程序框架 1 启动VisualC 选择File New弹出对话框 2 选择Projects UnigraphicsNXAppWizard 3 为工程文件命名 Ugapitest 并指定文件存放路径 E my source Ugapitest 然后选择OK 弹出对话框 4 选择内部应用模式和C 语言 选择Finish 弹出对话框 5 选择OK确认 创建一个Ugapitest工程 2 向Ugapitest工程添加应用程序 1 添加用户应用程序涉及到的头文件在Ugapitest cpp文件的 include Ugapitest h 后添加创建实体头文件 include 2 添加用户函数的声明添加本例应用函数声明 staticvoidugopen api void 3 添加调用函数语句在interrorCode UF initialize 语句后添加ugopen api 4 添加用户函数在Ugapitest cpp文件的最后添加用户函数语句voidugopen api void 3 调试 编译生成动态链接库文件Ugapitest dll4 执行启动UG 新建一个部件文件 然后选择 文件 执行 T NXOpen N 选择输入动态链接库文件Ugapitest dll 屏幕显示创建的实体图 4UIStyler对话框4 1UG OpenUIStyler的功能 1 提供建造UG风格对话框的可视化环境 并能生成UG OpenUIStyler文件和C代码 使用户在使用UG OpenUIStyler产生对话框时 不必考虑图形界面的实现 2 利用可视化环境快速生成UG风格对话框 通过选取和放置控件 从而实现可见即可得 3 可以在对话框中实现用户自定义位图 4 提供了属性编辑器 从而允许开发人员设置和修改控件属性 5 UIStyler产生的对话框可在MenuScript中被调用 可以实现在UG菜单上调用UIStyler产生的对话框 从而将用户应用程序和UG完全融合 4 2UIStyler对话框的设计UIStyler对话框的设计在UG界面环境下进行 首先是启动UIStyler模块 然后通过人机对话进行对话框结构设计和参数设置 最后与UG OpenAPI连接生成动态连接库文件 1 启动UIStyler在Unigraphics的Gateway 入口 状态下 选择Application UserInterfaceStyler 即进入UIStyler状态 UIStyler设计界面包括一个工具条和三个窗口 即控件工具条 对话框属性 DialogProperties 对象浏览 ObjectBrowser 以及设计对话框窗口 2 UIStyler控件 工具条 UIStyler提供的控件如下图所示 3 UIStyler对话框介绍 1 设计对话框设计对话框初始时为一个最基本的对话框 如下图所示 它由三个系统按钮和对话框标题组成 用户可以利用控件在基本对话框中加入用户自定义内容 2 对象浏览器 ObjectBrowser 对象浏览器中包含对象识别标识 名称及类型 如下图所示 3 对话框属性 DialogProperties 对话框属性中包括基本属性 Attributes 被选属性 Selection 和回调函数 Callbacks 等3张属性卡 界面设计完成后 点击save图标 保存生成3个对话框文件 dlg template c和 h 其中 是输入的对话框文件名 dlg是保存对话框图形界面的文件 h文件是UIStyler对话框C语言的头文件 包括对话框及其控件的表识符和函数原型的声明 template c是UIStyler对话框C语言的模板文件 包括各种定义和命令 template c文件和UG OpenAPI程序相结合 编译成动态链接库文件 dll 4 3UIStyler常用数据类型和函数1 结构UF STYLER item value type s查询对话框控件属性和设置对话框控件属性时使用 定义如下 UF STYLER item value type s intreason 函数输出值 表明触发回调函数的原因const item id 控件的标示intsubitem index 标示控件中的子对象intcount 数组的长度intitem attr 控件属性intindicator 数据类型UF STYLER value tvalue 控件的值 2 函数UF STYLER create dialog用于创建并显示对话框 只对UIStyler类对话框有效 定义如下 externintUF STYLER create dialog char dialog file UF STYLER callback info tcbs intnumber of cbs voidclient data int response 其中 dialog file指定创建的对话框文件 cbs指定创建的对话框定义的回调函数 number of cbs回调函数的数量 client data传递给回调函数的void类型的指针 response对话框终止原因 3 函数UF STYLER ask value用于查询对话框控件的属性 只能在对话框定义的回调函数中使用 定义如下 externintUF STYLER ask value intdialog id UF STYLER item value type p tvalue 其中 dialog id为被查询控件所属对话框的标识 value作为输入参数 指明查询对象和属性 作为输出参数 返回被查询对象的属性 4 函数UF STYLER set value用来改变控件属性 在对话框的回调函数中使用 定义如下 externintUF STYLER set value intdialog id UF STYLER item value type p tvalue 其中 dialog id为被查询控件所属对话框的标识 value为被修改的控件及其控件属性值 4 4对话框创建举例4 4 1对话框设计以创建下图所示对话框为例 详细说明对话框的设计 1 建立两个目录建立第一个目录E USER 在其下建立两个子目录application和startup 存放对话框文件 建立第二个目录E my source 用存放源代码 2 设置环境变量在 我的电脑 上单击鼠标右健 选择 属性 高级 环境变量 设置UGII USER DIR变量 其值为E USER 3 进入UIStyler对话框设计界面打开UG 选择Application菜单 UIStyler 进入UIStyler对话框设计界面 4 设计对话框 1 在 DialogTitle 一栏填入 FirstDialog 按Apply 2 在 Cue 一栏输入 任意字符 比如duihuakuang 3 在 PrefixName 中 把CHANGE改为MY 4 加入四个控件 5 编辑对话框的各个控件 1 改变String控件的标题 标识和长度Label String Inputanitem Identifier STR 0 ITEM Widthincharacters0 20 2 改变PushButton控件的标题 标识和回调函数的名字Label PushButton Import Identifier ACTION 1 IMPORT callbacks action 1 act cb import cb 将 CreatesDialog 激活 3 改变Label控件的标题和singleselectlist的标识将Label中的 Label ItemsList 将Identifier中的 LIST 2 ITEM LIST 4 改变singleselectlist可见项的个数将Number中的 3 6 6 保存对话框点击save图标 把对话框保存在E USER application目录下 文件名为first dlg 生成first dlg h first dlg dlg和first dlg template c三个文件 4 4 2利用VisualC 生成动态链接库文件1 建立一个VisualC 工程可以用两种方法建立工程文件 Win32Dynamic LinkLibrary或UnigraphicsNXAppWizard 选择File New Projects UnigraphicsNXAppWizard 在对话框中输入工程名first dlg及存放路径E my source 选择OK 确认建立一个工程文件 2 用建立对话框的文件替换工程中的文件将对话框的 template c 改为 cpp 和 h文件替换E my source first dlg目录下的 cpp和 h文件 3 修改替换过的first dlg cpp文件 1 在first dlg cpp文件中找到 ifdefMENUBAR COMMENTED OUT 把它和它对应的 endef 删掉 2 在first dlg cpp文件中找到 ifdefDISPLAY FROM USER EXIT 把他和他对应的 endef 删掉 3 在first dlg cpp文件中找到 把它改为 uf

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论