在“文件”选单中选择“新建工程”,然后双击“ActiveX控件”图标,生成一个控件工程项目(缺省名UserControl1)。此时设计窗口显示一个类似于窗体的界面(无边框),其属性窗口也类似于窗体的属性窗口,只是有很多熟悉的属性没有了,且还有一些一般窗体不具有的属性。选取“工程选单”最下面的“UserControl1属性”项,在出现的对话框中改工程名称为“TimeCtr”。在属性窗口中改控件名称为“MyTime”。   好了,我们开始做一些具体的工作,在控件的设计窗体中加入一个Label控件,改名为“lblTime”,设其“AutoSize”为“True”,“Caption”属性为空;再在控件设计窗体中加入一个Timer定时器控件,设定时器的“Interval”属性为1000;接下来通过拖动控件右下角的拖曳点调整控件为一小矩形;在Timer1_Timer()过程中加入如下代码: lblTime.Caption = Time 'Time 返回系统当前时间 现在将工程保存一下。由于控件工程不能独立运行,我们创建一个新的工程来测试一下设计的新控件。 
选取“文件”选单上的“添加工程”,注意不要用“打开工程”或“新建工程”,那样会关闭控件工程。创建一个“Standard exe”工程,并将控件工程的设计窗口关闭,这时会发现在控件工具栏的最下边出现了一个名为“MyTime”的新控件。将其放至Form1窗体内,窗体上会出现一行文字,显示的正是当前时间,这就是新创建的MyTime的实例“MyTime1”。 
添加“UpdateInterval”属性 
  Public Property Get UpdateInterval() As Variant 
   UpdateInterval = Timer1.Interval 
  End Property 
  Public Property Let UpdateInterval(ByVal vNewValue As Variant) 
   Timer1.Interval = vNewValue 
   PropertyChanged "UpdateInterval" 
  End Property 
  其中前者用于获取UpdateInterval属性,后者用于设置UpdateInterval属性。 
  现在关闭控件设计窗口,打开测试工程的窗体,点击窗体中的控件MyTime1,看一下其属性窗口,出现了一个“UpdateInterval”属性,且值为1000,也就是我们最初为控件设定的Interval属性。现在改变该属性值为3000,会发现控件上时间更新慢了,它现在是每三秒钟显示一次时间,当然会感觉慢了。 
为控件添加事件 
  在测试工程的代码窗口中,当前只有GotFocus、LostFocus、DragOver 和 DragDrop四个事件;而对于扩展的事件,VB5建议的包括Click、DblClick、KeyDown、KeyPress、KeyUp、MouseDown、MouseMove和MouseUp,这也是很多控件中最常用的。下面我们以Click为例进行说明。 
  选取“工具”选单中“添加过程”项,在名称中填写“Click”,类型为“事件”。我们会发现代码窗口中“通用”项下出现如下代码: 
  Option Explicit 
  Public Event Click() 
  Private Sub lblTime_Click() 
   RaiseEvent Click 
  End Sub为何,我运行测试工程,测试窗体就不见了呢?