计算机应用

计算机网络
计算机理论
计算机应用
电子商务

本类阅读TOP10

·图书馆管理系统
·中小企业办公自动化系统的设计与实现
·学生档案管理系统
·接口编程在期货交易系统中的应用
·数据加密技术
·计算机网络系统在制碱工业中的应用
·信息技术对高校图书馆工作的影响
·实时性远程答疑系统
·详解加密技术概念、加密方法以及应用
·基于Client/Server 的课件系统的设计与实现

分类导航
演讲致辞党团范文
心得体会领导讲话
经验介绍事迹材料
总结汇报计划方案
常用范文写作指南
证券金融银行管理
债务市场保险租赁
金融研究证券投资
财务管理投资决策
财务分析融资决策
财务管理市场营销
会计审计会计审计
成本会计管理会计
CPA行业管理学
战略竞争旅游管理学
成本管理管理学理论
物流管理人力资源管理
财政税收财政政策
财税法规税务研讨
税收理论国债研究
财政研究经济学
中国经济经济学理论
新经济学产业经济
国际经济经济学相关
地方经济发展战略
国际贸易公共管理
公共政策行政管理
经济管理企业战略
管理理论市场营销
企业研究企业文化
文化类西方文化
传统文化社会学相关
艺术学美学
音乐影视
艺术理论社会学
伦理道德环境保护
人口问题农村研究
教育学历史学
教育学国学
理工科理科相关
统计学物理学
工业设计交通
土建水利学材料工程学
电子学通信学
化工计算机
计算机网络计算机理论
计算机应用电子商务
文学外国语
人物研究哲学
哲学相关思想哲学
科技哲学中国哲学
西方哲学逻辑学
政治政治相关
民族主义资本主义
社会主义马克思主义
法律行政法
法学理论司法制度
经济法民法
医学医学
临床医学药学
其他文秘
公务员考试最新资讯
考试资料复习指导
面试指南教育教学
VB中创建超长时间计时器对象

作者:未知 来源:应用文写作网 加入时间:2005-12-29 月光软件站

VB中创建超长时间计时器对象  
发布时间: 2004-04-10  作者:  

(长沙交通学院 信息与计算科学系  长沙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:[email protected] 



相关文章

相关软件