接着楼上继续,是否发现上面向导的左边列表框中没有ShowAbout呢?确实没有,因为ShowAbout是我们自己想的一个方法名称,不是系统内置的。没有也不用着急,我们让向导继续,单击下一步,向导也是允许我们创建自定义接口的,如图在这个窗体中,先单击新建按钮,再在弹出的窗口中的名称中输入ShowAbout,下面选择 方法 (因为我们要给vbaTimer新增一个自定义方法),单击确定回到向导,这一步完成,现在继续单击下一步,向导现在看起来和下图差不多
这一步是设定自定义控件的各个属性、方法、事件与工程中包含的系统内置控件的个属性、方法、事件的映射关系。对于我们这个vbaTimer来说,我们将Eanbled映射为Timer的Enabled(当我们设定vbaTimer的Enabled时实际上是在设定Timer控件的Enabled,另外两个类似),Interval映射为Timer的Interval,Timer事件映射为Timer控件的Timer事件,至于那个ShowAbout没有什么可映射的,我们可以留着他,向导的下一步就会让我们处理。设定好映射关系后,继续单击向导的下一步,并在下一步进行如下图所示的设定:
由于我们只需要这个ShowAbout方法显示一个对话框,这里的返回值类型可以随便设定(这里我选择了Msgbox函数的返回类型),说明文字也可以随意。
好啦!到这里再次单击向导的下一步就完成了!至此我们的这个自定义控件vbaTimer已经可以像vb自带的Timer一样进行工作了。 我们在现有的工程基础上,添加一个测试工程,单击VB工具栏上的来添加一个工程,然后关闭自定义控件的设计器窗口(如果不关闭,则不能在测试工程中添加自定义控件——控件工具箱中显示为灰色)
往测试工程的窗体(Form1)上添加一个自定义控件(现在在Form1上只看到几个调节大小的小黑点) 现在看看自定义控件有没有用,我们双击自定义控件,在控件的Timer事件中写入 Me.caption=now,然后再在属性窗口中设定自定义控件的Interval属性为100, 最后在工程管理器中设定这个测试工程为启动,方法如下图: 再运行测试工程就可以发现窗体的标题栏中在显示变化的时间日期了。
[此贴子已经被作者于2008-7-15 12:29:15编辑过] |