zoukankan
html css js c++ java
ASP与ActiveX控件交互实战(二)
我们来看看如何从服务端获取数据,传递到ActiveX控件中。 1) 初始化时使用参数绑定 2) 运行时得到数据 打开vb6,新建ActiveX控件工程。 工程名:fOcx,用户控件名:UC2 为了方便,我们使用ActiveX控件接口向导…,菜单->外接程序->外接程序管理器->VB 6 ActiveX控件接口向导。确定即可。 打开ActiveX控件接口向导,下一步,对于可用名称和选定名称我们默认下一步,新建自定义成员,GetInfo类型:属性,下一步,共有方法中选择我们刚才添加的GetInfo,映射到控件选择TxtInfo,成员选择Text,下一步直到完成。代码窗口中会生成一些我们不需要的,删除, '注意!不要删除或修改下列被注释的行! 'MappingInfo=txtinfo,txtinfo,-1,Text Public Property Get GetInfo() As String GetInfo = txtinfo.Text End Property Public Property Let GetInfo(ByVal New_GetInfo As String) txtinfo.Text() = New_GetInfo PropertyChanged "GetInfo" End Property Private Sub Command1_Click() Label2.Caption = GetInfo() End Sub '从存贮器中加载属性值 Private Sub UserControl_ReadProperties(PropBag As PropertyBag) txtinfo.Text = PropBag.ReadProperty("GetInfo", "Text1") End Sub '将属性值写到存储器 Private Sub UserControl_WriteProperties(PropBag As PropertyBag) Call PropBag.WriteProperty("GetInfo", txtinfo.Text, "Text1") End Sub 编译成OCX控件.运行生成的测试页.Text中默认的是Text1 如何将服务器端的数据传递给OCX呢? 使用Microsoft ActiveX Control Pad这个工具,可以很容易找到. 直接用这个工具把测试页打开. 菜单->Edit->Edit Activex Control,呵呵,打开了一个可视化的界面. 看到了吧,有一个属性框,我们可以进行设置,设置完成以后的代码如下: <HTML> <HEAD> <TITLE>New Page</TITLE> </HEAD> <BODY> <OBJECT ID="GetClient" WIDTH=507 HEIGHT=440 CLASSID="CLSID:890D1028-298B-45CF-9A64-6ED5A5BACBC9" CODEBASE="http://localhost/xml/fOcx.ocx"> <PARAM NAME="_ExtentX" VALUE="13414"> <PARAM NAME="_ExtentY" VALUE="11642"> <PARAM NAME="GetInfo" VALUE="这是ocx得到的客户端读卡器的信息"> </OBJECT> </BODY> </HTML> 增加了ID,ID就是我们用来访问的标志.还有我们的属性GetInfo,我们也设定初始值了 好了,运行. Text中就出现了我们设定的值”这是ocx得到的客户端读卡器的信息” 我们把上边的页面改成asp的,看代码: <HTML> <HEAD> <TITLE>龙卷风测试页</TITLE> </HEAD> <BODY> <% dim sValue sValue="这是ocx得到的客户端读卡器的信息" %> <OBJECT ID="GetClient" WIDTH=507 HEIGHT=440 CLASSID="CLSID:56DFCA88-F5B8-4879-853B-97FE504423FD" CODEBASE="http://localhost/xml/fOcx.ocx"> <PARAM NAME="_ExtentX" VALUE="13414"> <PARAM NAME="_ExtentY" VALUE="11642"> <PARAM NAME="GetInfo" VALUE="<%=sValue%>"> </OBJECT> </BODY> </HTML> OK,运行即可 我们看看第二种情况 运行时得到数据 <HTML> <HEAD> <TITLE>龙卷风测试页</TITLE> <% dim sValue sValue="这是ocx得到的客户端读卡器的信息" %> <SCRIPT ID=clientEventHandlersJS LANGUAGE=javascript> <!-- function button1_onclick() { GetClient.GetInfo='<%=sValue%>'; } //--> </SCRIPT> </HEAD> <BODY> <OBJECT ID="GetClient" WIDTH=507 HEIGHT=440 CLASSID="CLSID:56DFCA88-F5B8-4879-853B-97FE504423FD" CODEBASE="http://localhost/xml/fOcx.ocx"> <PARAM NAME="_ExtentX" VALUE="13414"> <PARAM NAME="_ExtentY" VALUE="11642"> </OBJECT> <INPUT id=button1 type=button value=Button name=button1 LANGUAGE=javascript onclick="return button1_onclick()"> </BODY> </HTML> 运行后,点击按钮即可看到效果.
查看全文
相关阅读:
C语言头文件stdarg.h(cstdarg)
C语言头文件ctype.h(cctype)
内存数库库种类
C#设计模式单件模式(Singleton Pattern)
vs2005快捷键,vs2008通用
移动MYSQL数据库经常遇到乱码的问题
ie6 ie7 ie8 共存以及Firefox浏览器CSS兼容写法
用正则表达式替换a标记href值
IE6 PNG透明终极解决方案(打造W3CfunsIE6PNG最强帖)
IE的hack
原文地址:https://www.cnblogs.com/QDuck/p/137143.html
最新文章
简单工作流SWF公文流转管理系统的数据库设计图
JavaScript获取网页中HTML元素的几种方法分析
ASP.NET AJAX入门系列(4):使用UpdatePanel控件(一)(转)
一些很酷的.Net技巧
Asp.Net Ajax最简单的例子
(转)偶然发现5年前的编程实习日记,特与博客园同仁分享一下
(转)依靠技术什么的想发财是不可能的事情吧
implicit intent的声明和使用
【需求】如何编写高质量“软件需求说明书”(转)
一些简单的设计原则
热门文章
memcached系列之3:memcached的分布式,hash方式
批处理入门
分别用线程池和List
实现同样的功能
memcached系列之1:memcached基础知识简介(为什么要使用memcached做缓存服务器)
javascript定义类和实例化类
设计安全的多线程应用程序(线程安全)
巧用Dictionary对象实现线程安全类(实例)
在多个服务器跑程序经验之批处理顺序、分支、循环结构
什么是hash
memcached系列2:memcached实例
Copyright © 2011-2022 走看看