



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1. *在Patran下挂下拉菜单*通常我们不修改init.pcl文件,启动init.pcl时而会执行附带的启动文件p3prolog.pcl和p3epilog.pcl。如果这些文件存在,就会在init.pcl启动前后装载p3prolog.pcl(启动前)和p3epilog.pcl(启动后),所以这两个文件是我们插入自定义命令的好地方。!PATH !LIBRARY !INPUT 在Patran安装目录下修改p3prolog.pcl,加入如下命令,例如:!input mymenu.pcl#装载菜单文件ui_exec_function(mymenu,init) #当且仅初始化一次!input plateform.pcl #装载对话框文件2. * 下拉菜单程序编写*CLASS exerciseFUNCTION init() /*初始化菜单*/WIDGET menubar,menu,item1,item2,item3/*定义控件变量*/menu = uil_primary.get_menubar_id()/*获取主菜单ID*/menubar=ui_menu_create(menu,exercise_menu,有限元分析)/*添加菜单*/item1=ui_item_create(menubar,ex_1,计算,FALSE)/*添加子菜单*/item2=ui_item_create(menubar,ex_2,导入文件,FALSE)/*添加子菜单*/item3=ui_item_create(menubar,ex_3,结束,FALSE)/*添加子菜单*/END FUNCTIONFUNCTION exercise_menu(item_name) /*菜单各项的响应函数*/STRING item_nameSWITCH(item_name) CASE(EX_1)write(Plate with a hole creating function)ui_exec_function(plateform,init)plateform.display() CASE(EX_2)write(cross pipes creating function) CASE(EX_3)write(slot modeling function)END SWITCHEND FUNCTIONEND CLASS3. *弹出对话框程序编写*#include appforms.pCLASS plateForm/*定义控件变量*/ CLASSWIDE WIDGET form_id,dataBox1,dataBox2,dataBox3, apply_button,cancel_button,delete_button/*初始化对话框,必要的函数*/ FUNCTION init()real x_loc,y_loc/*创建对话框窗体ui_form_create(callback,x,y,position,width,height,label,unused)*/form_id=ui_form_create(,FORM_X_LOC,FORM_Y_LOC,UL,FORM_WID_SML,FORM_HGT_FULL,PLATE WITH A HOLE,)/*创建图标*/x_loc=FRAME_WID_SINGLE/2.-200*PIXEL_WID/2.+FORM_L_MARGINy_loc=FRAME_T_MARGIN+INTER_WIDGET_SPACE/* ui_labelicon_create(parent,callback,x,y,label)*/ui_labelicon_create(form_id,x_loc,y_loc,platehole.icon)y_loc+=200.*PIXEL_HGT+DBOX_HGT_NO_LABOVE+INTER_WIDGET_SPACE/*创建输入文本框ui_databox_create(parent,callback,x,y,label_length,box_length,width,height,label,value,label_above,datatype,num_vars)*/dataBox1=ui_databox_create(form_id,FRAME_L_MARGIN,y_loc,SINGLE_SPACE*5.0,DBOX_WID_SINGLE*0.6,r=,2.,FALSE,REAL,1)y_loc+=DBOX_HGT_NO_LABOVE+INTER_WIDGET_SPACEdataBox2=ui_databox_create(form_id,FRAME_L_MARGIN,y_loc,SINGLE_SPACE*5.0,DBOX_WID_SINGLE*0.6,w=,5.,FALSE,REAL,1)y_loc+=DBOX_HGT_NO_LABOVE+INTER_WIDGET_SPACEdataBox3=ui_databox_create(form_id,FRAME_L_MARGIN,y_loc,SINGLE_SPACE*5.0,DBOX_WID_SINGLE*0.6,h=,5.,FALSE,REAL,1)y_loc+=DBOX_HGT_NO_LABOVE+INTER_WIDGET_SPACE*2/*创建“应用”按钮ui_button_create(parent, callback, x, y, width, height, label, unused, highlight)*/apply_button=ui_button_create(form_id,apply_cb,BUTTON_HALF_X_LOC1,y_loc,BUTTON_WID_HALF,0,应用,TRUE,TRUE)/*创建“取消”按钮*/cancel_button=ui_button_create(form_id,cancel_cb,BUTTON_HALF_X_LOC2,y_loc,BUTTON_WID_HALF,0,取消,TRUE,FALSE)y_loc+=DBOX_HGT_NO_LABOVE+INTER_WIDGET_SPACE/*创建“删除”按钮*/delete_button=ui_button_create(form_id,delete_cb,BUTTON_HALF_X_LOC1,y_loc,BUTTON_WID_HALF,0,Delete,TRUE,FALSE)y_loc+=BUTTON_DEFAULT_HGT+FORM_B_MARGIN+INTER_WIDGET_SPACEui_wid_set(form_id,HEIGHT,y_loc) END FUNCTION/*窗体显示,必要的函数*/ FUNCTION display()ui_form_display(plateForm) END FUNCTION/*“应用”按钮响应处理函数*/FUNCTION apply_cb() real r,w,h ui_wid_get(databox1,VALUE,r) ui_wid_get(databox2,VALUE,w) ui_wid_get(databox3,VALUE,h) ui_form_hide(plateform) ui_writec(r =%f,w=%f,h=%f,r,w,h) END FUNCTION FUNCTION cancel_cb()ui_form_hide(plateform) END FUNCTION FUNCTION delete_cb() ui_form_delete(plateform) END FUNCTIONEND CLASS4. C文件编译处理例如:d:mscpatran2001r2bincpp -id:/msc/patran2001r2/customization c:/uillist.pcl c:/uillist.cpp5. 编程格式介绍转行继续符:分号分隔符:同C+:“;”注释多行:/*/注释单行:“”或者“$”计算表达式说明:用“”(数字1键左边的那个键)例如:Angle:360/5,或者用WRITE(10+20)变量和常量Integer(整型),Real(实数),Logical(TRUE和FALSE),String,Widget(控件,有个常量WIDGET_NULL)变量的生命周期Global 全局Local 在函数内,本地Static 静态,patran退出就消失ClassWide 对一组函数可见,patran退出就消失6. 指令文件管理! input file.pcl #编译连接file.pcl,并将函数调入patran!compile file.pcl into xxx.plb #编译file.pcl,并存入plb库中!library xxx.plb
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025电影剧本创作聘用合同模板
- 2025房产不动产抵押合同范本:商业地产项目抵押融资
- 请假条写作课件
- 红酒杯知识培训总结课件
- 2025标准机械设备采购合同书样本
- 语言基础知识培训简报课件
- 2025农业作物种子买卖服务合同
- 2025制片合同范本模板
- 2025出国留学合同
- 在线支付服务接入合作协议
- 2024年中国防锈油行业调查报告
- 办公软件培训课件
- 成人氧气吸入疗法-中华护理学会团体标准
- 2025年职业指导师(中级)考试试卷:职业指导师考试备考策略
- 2025年度辅警招聘考试题(含答案)
- 初三心理健康教育开学第一课
- 初一新生入学教育
- 卫生院健康检查管理制度
- 高二秋季开学第一课班会课件:启航高二把握未来
- 山地绿化工程的安全防范措施
- 云南贵金属新材料控股集团笔试
评论
0/150
提交评论