下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1. 组件使用新建一C#Windows程序;添加组件到程序中将该控件移动到Form上添加两个按钮,并修改名称2. 组件初始化初始化的代码如下,/设置IDL的路径 this.axIDLDrawWidget1.IdlPath = "C:Program FilesITTIDL71binbin.x86" /初始化标志 int initFlag = this.axIDLDrawWidget1.InitIDL(int)this.Handle); if (initFlag <= 0) MessageBox.Show("IDL初始化失败,请检查!"); retur
2、n; ;/IDL组件 this.axIDLDrawWidget1.CreateDrawWidget();3. 功能调用IDLDrawWidget组件具备IDL命令行的执行功能,即方法ExecuteStr(string strCommand),其中strCommand是命令字符串;调用IDL的功能形式上有两种,即IDL的pro源码文件和sav文件。二者在调用的时候稍微有些不同。如果是pro源码文件,需要先编译再调用。this.axIDLDrawWidget1.ExecuteStr(".compile ''"); this.axID
3、LDrawWidget1.ExecuteStr("idlfunction"); 如果是sav文件,需要先restore再调用。this.axIDLDrawWidget1.ExecuteStr("restore 'idlfunction.sav'"); this.axIDLDrawWidget1.ExecuteStr("idlfunction"); 4. 数据传递仅仅在上面步骤中,实现了功能的调用是远远不够的,因为在实际处理中肯定要牵涉到数据的传递。这样,怎么快速的实现数据传递是混合编程必须要解决的关键问题之一。IDLD
4、rawWidget组件具备SetNamedArray、SetNamedData和CopyNamedArray这样的方法进行数组数据的共享。只需要二者具备同样的类型和维数即可进行数据交换,支持的数据类型见表格。IDL类型ActiveX类型IDL_TYPE_BYTEUT_UI1 unsigned charIDL_TYPE_BYTEVT_I1 - signed charIDL_TYP_INT VT_I2 - signed shortIDL_TYP_LONG VT_I4 - signed longIDL_TYP_FLOAT VT_R4 - floatIDL_TYP_DOUBLE VT_R8 - dou
5、ble组件常用方法列表CopyNamedArray:将IDL下的数组内容copy到组件使用环境中的OLE变量数组;CopyWindow:将IDLDrawWidget组件内显示的内容copy到Windows剪贴板中;CreateDrawWidget:在ActiveX控制操作中创建IDLDrawWidget控件;DoExit:退出ActiveX控件并释放IDL占用的资源;ExecuteStr:执行IDL命令语句字符串;GetNamedData:根据变量名获取IDL下该变量的值;InitIDL: IDL运行环境初始化;InitIDLEx:可传入参数的IDL运行环境初始化;Print:将ActiveX
6、组件中显示的内容输出到默认打印机;RegisterForEvents:IDLDrawWidget组件是否传递程序事件;SetNamedArray:根据指定的名字和内容创建一个IDL下的数组。基本类型见表格。SetNameData:根据指定的变量名和值创建一个IDL下的变量。SetOutputWnd:将IDL的输出发送到指定窗口;VariableExists:根据变量名判断IDL下该变量是否存在;如下面为实现变量和数组交换的功能代码/初始化定义变量 object objStr ="abc" /定义变量 this.axIDLDrawWidget1.SetNamedData(&q
7、uot;var", objStr); /编译IDL功能代码并传入单个变量 this.axIDLDrawWidget1.ExecuteStr(".compile 'exchangeV'"); this.axIDLDrawWidget1.ExecuteStr("exchangeVar, var = var"); /将IDL中修改过的变量获得并对话框显示 objStr = this.axIDLDrawWidget1.GetNamedData("var"); /定义数组 int, dataarr = ne
8、w int3, 2 6, 4 , 12, 9 , 18, 4 ; /将数组内容copy到IDL下的变量arr中 this.axIDLDrawWidget1.SetNamedArray("arr",dataarr,true); /编译IDL功能代码并传入数组 this.axIDLDrawWidget1.ExecuteStr(".compile 'exchangeA'"); this.axIDLDrawWidget1.ExecuteStr("exchangeArr, arr = arr"); /获取IDL中修改过的数组 objStr = this.axIDLDrawWidget1.CopyName
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 自发组织活动免责协议书
- 2024部编版语文五年级上册第四单元大单元备课
- 2024年简易采购协议
- 2024年三年级英语教学计划
- S公司人力资源管理信息系统设计与实现
- 2026届北京市昌平区高三下学期第一次统一练习历史试题(含答案)
- 空压机合同能源管理合同
- 销售报告工作总结商务风模版
- 国际基础与金融 19
- 广西防城港市2026年七年级下学期期中数学试题附答案
- 虚拟现实产品设计师安全生产能力测试考核试卷含答案
- 河南水利与环境职业学院2026年单独招生《职业适应性测试》模拟试题及答案解析
- 2026广西送变电建设有限责任公司项目制用工招聘71人笔试模拟试题及答案解析
- 课时1 二次根式的加减 课件 2025-2026学年人教版数学八年级下册
- 北京市安全生产风险管理实施指南
- 2026年健康消费 精准营养定制项目营销方案
- 2025年下半年湖北武汉市江汉区招聘社区网格管理员招考易考易错模拟试题(共500题)试卷后附参考答案
- 2025陕西省煤层气开发利用有限公司招聘(30人)笔试历年典型考点题库附带答案详解试卷3套
- 基于慢性病运动干预的健康管理系统:设计、实现与实践探索
- 玄奘取经课件
- 二年级下册语文第四单元试卷
评论
0/150
提交评论