javaactivex开发教程_ActiveX控件和⾃定义控件组开发(1)ActiveX是Microsoft对⼀系列策略性⾯向对象程序技术和⼯具的称呼,它与Java中的Applet功能类似,其依赖的主要技术是组件对象模型(COM),它是“成品”的软件模块。
ActiveX控件是在OLE控件“对象链接与嵌⼊控件”和OCX控件的基础发展起来的,其重要作⽤是可以插⼊到⽹页或应⽤程序中使⽤。
ActiveX控件可以⽤各种编程语⾔来开发,如C、C++,也包括.NET中的C#、VB.NET等。ActiveX控件通常以dll或ocx⽂件的形式存在,它不能独⽴运⾏,必须依赖于其他程序,相应的这些程序称为ActiveX控件宿主程序。
宿主程序在使⽤控件和组件时,不需要编译,只需要按照既定的格式说明进⾏调⽤即可。这与使⽤函数或类不同。在使⽤函数或类时,需要将它们的代码加⼊到程序中相应的位置,并在编译后才能调⽤。
创建ActiveX控件最简便的⽅法是通过继承UserControl类来实现。
1. 电⼦时钟控件
开发⼀个具有电⼦时钟功能的ActiveX控件,该⾃定义控件还提供⽤于获取或设置时间的属性。
(1)在VS.NET 2008中选择“⽂件”|“新建”|“项⽬”命令,在打开的“新建项⽬”对话框中选择左边⽅框中的“Visual C#”项,在右边的⽅框中选择“Windows窗体控件库”(⽽不能选择其他项);
(2)为使在其他宿主程序中显⽰具有特定意义的控件名,我们需要将类名更改为“MyAccutronControl”,这涉及到三个地⽅的修改:
在解决⽅案资源管理器中右击节点“UserControl1.cs”,在打开的菜单中选择“查看代码”,然后打开代码编辑器,将⾃动形成的类名和构造函数名“UserControl1”都改为“MyAccutronControl”;
双击解决⽅案资源管理器中的节点“UserControl1.Designer.cs”,在编辑器中打开UserControl1.Designer.cs⽂件,将其中的类名由原来的“UserControl”改为“MyAccutronControl”。
(3)双击节点“UserControl1.cs”,打开⾃定义控件的设计界⾯,添加⼀个Label控件和Timer组件 ,并进⾏设置:
结果控件的设计界⾯如下:
(4)为开发的控件编写代码。其中,先在MyAccutronControl类中声明三个成员变量:
private int hour = 0; //作⼩时计数器
activex 控件private int minute = 0; //分钟计数器
private int second = 0; //秒计数器
(5)然后在Timer组件的Tick事件处理函数中编写实现hour、minute和second之间计数关系的代码:private void
timer1_Tick(objectsender, EventArgs e)
{stringhs,ms,ss,timeStr;
hs= ms = ""; second++;if (second == 60)
{ second= 0;
minute++;if (minute == 60)
{
minute= 0;
hour++;if (hour == 24) hour = 0;
}
}
hs=hour.ToString();if (hs.Length == 1) hs = "0" + hs; //保证以两个字符显⽰分钟数
ms =minute.ToString();if (ms.Length == 1) ms = "0" + ms; //保证以两个字符显⽰分钟数
ss =second.ToString();if (ss.Length == 1) ss = "0" + ss; //保证以两个字符显⽰秒数
timeStr = hs + ":" + ms + ":" +ss;
label1.Text=timeStr;
}
为了让宿主程序能够对时间的各种成份(⼩时、分、秒)进⾏设置,还分别定义三种属性:public int hours //获取或设置⼩时数的属性
{get { returnhour; }set { hour =value; }
}public int minutes //获取或设置分钟数的属性
{get { returnminute; }set { minute =value; }
}public int seconds //获取或设置秒数的属性
{get { returnsecond; }set { second =value; }
}
(5)⽣成控件。选择菜单“⽣成”|“⽣成解决⽅案”命令(也可以按F6),将⽣成名为AccutronControl.dll的⽂件,它们默认位于程序⽬录下的AccutronControl\bin\Debug⼦⽬录下。
——⾄此,名为MyAccutronControl的⾃定义控件已经成功创建。注意,控件名是由对应的类名来决定
的。、
(6)应⽤控件。新建⼀个winform窗体项⽬,将⽣成的.dll控件拖放到窗体中即可。(具体怎么加载这个控件到⼯具箱很简单的⼤家应该都清楚【右击选择项,浏览,到刚才⽣成的.dll⽂件即可】)
tips:在VS2010 下可以直接运⾏控件
运⾏如下:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论