山东自考网 | 网站为考生提供山东自考信息服务,供学习交流使用,非政府官方网站,官方信息以山东省教育招生考试院为准。
| |
微信订阅

山东自考网微信公众号

关注公众号

招生咨询08:00-24:00

微信公众号

咨询老师

微信扫一扫
山东自考网在线咨询电话
【热点】 山东省自考管理系统 成绩查询系统 准考证打印入口 自考日程 免考申请 转考申请 实践考核 毕业申请 学位申请 论文答辩 微信公众号 微信交流群 在线咨询

VB中创建超长时间计时器对象

整理编辑: 山东自考网

发布时间:2018-05-24 14:20:31

阅读量:



(长沙交通学院 信息与计算科学系 长沙410076) 作者:李湘江 邹筱梅

摘 要:本文介绍在VB程序中用Timer控件创建一个超长时间的计时器对象,将其编译成ActiveX DLL部件,利用代码的可重用性,在其它应用程序中调用。
关键词:Vb 计时器 对象

VB系统中提供了固有计时器Timer控件,通过给计时器控件的Interval属性设置不同的数值,就可以控制计时器运行的时间间隔,但该属性是一个双字节的整型变量,最大值只能设置为65535,即只有65535毫秒,约一分钟多一点,在需要长时间计时时,该控件就无能为力了。本文给出用Timer控件创建一个超长时间的计时器对象,并将其编译成ActiveX DLL部件,供其它应用程序调用,可实现最大限度地利用代码的可重用性。下面给出这个超长计时器对象的编程设计过程,供读者参考选用。

1.编写程序
启动VB,新建一个ActiveX DLL工程,将工程命名为NewTimer,将类模块名Class1改名为LongTimer。在工程中添加一个窗体Form1,在窗体上加入一个Timer计时器控件Timer1。打开LongTimer类模块,加入如下程序代码:
Option Explicit
Public Event Tick() '声明事件
Private nz As Integer
Private cs As Integer
Private m_Form As Form1
Private WithEvents m_Timer As Timer '声明对象类变量

'返回Enable属性值
Public Property Get Enabled() As Boolean
 Enabled = m_Timer.Enabled
End Property

'设置Enable属性值
Public Property Let Enabled(ByVal vNewValue As Boolean)
 m_Timer.Enabled = vNewValue
End Property

'返回Interval属性值
Public Property Get Interval() As Long
 Interval = m_Timer.Interval
End Property

'设置Interval属性值
Public Property Let Interval(ByVal vNewValue As Long)
 cs = 0
 nz = vNewValue \ 65536 + 1
 m_Timer.Interval = vNewValue \ nz
End Property

'类初始化事件
Private Sub CLASS_Initialize()
 Set m_Form = New Form1
 Load m_Form
 Set m_Timer = m_Form.Timer1
End Sub

'类终止事件
Private Sub CLASS_Terminate()
 Unload m_Form
 Set m_Timer = Nothing
End Sub

'产生Tick事件
Private Sub m_Timer_Timer()
 cs = cs + 1
 If cs >= nz Then
  RaiseEvent Tick
  cs = 0
 End If
End Sub
窗体Form1只用来作计时器Timer1的载体,不用于显示。

2.测试NewTimer.DLL
对ActiveX DLL部件进行测试,与标准的EXE程序一样,可分为单步运行或全运行。在写完所有程序代码后,建议用户先用Ctrl+F5进行全编译执行,发现检查NewTimer程序的语法错误。也可建立一个测试工程与NewTimer链接进行测试,针对由NewTimer类模块提供的每个属性和事件,添加测试代码来测试它们的属性和方法。按F8,进入单步运行状态,逐个语句察看对NewTimer类模块的调用情况。

3.编译NewTimer.DLL
完成测试,排除所有错误后,从“文件(F)”菜单中选择“生成NewTimer.dll(K)”命令,编译生成NewTimer.dll文件。编译成功后NewTimer.dll文件将自动注册到Windows注册表中,

4.引用NewTimer.DLL
引用ActiveX DLL部件同引用其他对象一样,从“工程(P)”菜单中选择“引用(N)”命令,打开引用窗口,从引用列表中选中NewTimer对象。如果是第一次引用NewTimer,则在引用窗体上单击“游览(B)”命令按钮,将NewTimer.DLL文件添加到可引用列表框中方可使用。

5.调用NewTimer.DLL
在应用程序中加入下述程序代码,实现参NewTimer.dll的调用:
 Option Explicit
 Dim WithEvents LongTimer1 As LongTimer

 Private Sub LongTimer1_Tick()
 Print "时间到,此处添加处理程序"
 End Sub

 Private Sub Command1_Click()
 LongTimer1.Interval = 12000  ‘两分钟
 LongTimer1.Enabled = True
 End Sub

 Private Sub Form_Load()
  Set LongTimer1 = New LongTimer
 End Sub


参考文献
[2]东箭工作室.Visual Basic5.0中文版程序设计.清华大学出版社,1997
[3]Evangelos Petroutsos. Visual Basic5从入门到精通.北京:电子工业出版社,1997

------------------------------------------------------------------------------
作者简介:李湘江,男,工程师,主要从事网络、CAD、CAI、软件工程方面的应用研究。 
作者单位:长沙交通学院信息与计算科学系 长沙410076
电话:0731-5219487(办)
Email:lxjzy@263.net



本文标签:山东自考  毕业论文  VB中创建超长时间计时器对象

转载请注明:文章转载自(http://www.zk.sd.cn

本文地址:http://www.zk.sd.cn/lw/15133.html

小编提示:添加【山东自考网】招生老师微信,即可了解2023年山东自考政策资讯自考报名流程准考证打印方法成绩查询时间以及领取历年真题资料个人专属备考方案等相关信息!

添加山东自考网招生老师微信,在线咨询报名报考等相关问题
(添加“山东自考网”招生老师微信,在线咨询报名报考等相关问题)

填写下方信息,立即领取山东自考《备考方案》!

《山东自考网》免责声明:

(一)由于考试政策等各方面情况的不断调整与变化,本网站所提供的考试信息仅供参考,请以省考试院及院校官方发布公布的正式信息为准。

(二)本站文章内容信息来源出处标注为其他平台的稿件均为转载稿,免费转载出于非商业性学习目的,版权归原作者所有。如您对内容、版权等问题存在异议请与本站联系,我们会及时进行处理解决,联系邮箱:812379481@qq.com。

上一篇:数据加密技术

下一篇:税收面临网上贸易的挑战