VB中创建超长时间计时器对象 |
|
|
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的载体,不用于显示。locAlhost 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 [1] [2] 下一页
|
|
上一个论文: 图书馆管理系统 下一个论文: 实时性远程答疑系统
|
|
|
看了《VB中创建超长时间计时器对象》的网友还看了:
[今日更新]浅谈中职教育中创新人才培养模式 [免费范文]试论在中学数学课堂教学中创新素质教育 [今日更新]高中创意写作教学尝试 [今日更新]浅谈中等艺术教育中创新能力的培养 [今日更新]谈幼儿艺术教育中创造思维的开发和培养 [今日更新]信息技术教学中创新性教育探究 [今日更新]小学作文起步教学中创新人格的培养 [今日更新]浅谈小学美术教学中创造能力的培养 [今日更新]数学教学论文写作中创造性思维的运用 [今日更新]基于VBM的战略管理会计研究
|
|