前言:本站為你精心整理了計(jì)算機(jī)畢業(yè)vb中創(chuàng)建超長(zhǎng)時(shí)間計(jì)時(shí)器對(duì)象范文,希望能為你的創(chuàng)作提供參考價(jià)值,我們的客服老師可以幫助你提供個(gè)性化的參考范文,歡迎咨詢。
摘要:本文介紹在vb程序中用timer控件創(chuàng)建一個(gè)超長(zhǎng)時(shí)間的計(jì)時(shí)器對(duì)象,將其編譯成activexdll部件,利用代碼的可重用性,在其它應(yīng)用程序中調(diào)用。
關(guān)鍵詞:vb計(jì)時(shí)器對(duì)象
vb系統(tǒng)中提供了固有計(jì)時(shí)器timer控件,通過給計(jì)時(shí)器控件的interval屬性設(shè)置不同的數(shù)值,就可以控制計(jì)時(shí)器運(yùn)行的時(shí)間間隔,但該屬性是一個(gè)雙字節(jié)的整型變量,最大值只能設(shè)置為65535,即只有65535毫秒,約一分鐘多一點(diǎn),在需要長(zhǎng)時(shí)間計(jì)時(shí)時(shí),該控件就無能為力了。本文給出用timer控件創(chuàng)建一個(gè)超長(zhǎng)時(shí)間的計(jì)時(shí)器對(duì)象,并將其編譯成activexdll部件,供其它應(yīng)用程序調(diào)用,可實(shí)現(xiàn)最大限度地利用代碼的可重用性。下面給出這個(gè)超長(zhǎng)計(jì)時(shí)器對(duì)象的編程設(shè)計(jì)過程,供讀者參考選用。
1.編寫程序
啟動(dòng)vb,新建一個(gè)activexdll工程,將工程命名為newtimer,將類模塊名class1改名為longtimer。在工程中添加一個(gè)窗體form1,在窗體上加入一個(gè)timer計(jì)時(shí)器控件timer1。打開longtimer類模塊,加入如下程序代碼:
optionexplicit
publiceventtick()''''聲明事件
privatenzasinteger
privatecsasinteger
privatem_formasform1
privatewitheventsm_timerastimer''''聲明對(duì)象類變量
''''返回enable屬性值
publicpropertygetenabled()asboolean
enabled=m_timer.enabled
endproperty
''''設(shè)置enable屬性值
publicpropertyletenabled(byvalvnewvalueasboolean)
m_timer.enabled=vnewvalue
endproperty
''''返回interval屬性值
publicpropertygetinterval()aslong
interval=m_timer.interval
endproperty
''''設(shè)置interval屬性值
publicpropertyletinterval(byvalvnewvalueaslong)
cs=0
nz=vnewvalue\65536+1
m_timer.interval=vnewvalue\nz
endproperty
''''類初始化事件
privatesubclass_initialize()
setm_form=newform1
loadm_form
setm_timer=m_form.timer1
endsub
''''類終止事件
privatesubclass_terminate()
unloadm_form
setm_timer=nothing
endsub
''''產(chǎn)生tick事件
privatesubm_timer_timer()
cs=cs+1
ifcs>=nzthen
raiseeventtick
cs=0
endif
endsub
窗體form1只用來作計(jì)時(shí)器timer1的載體,不用于顯示。
2.測(cè)試newtimer.dll
對(duì)activexdll部件進(jìn)行測(cè)試,與標(biāo)準(zhǔn)的exe程序一樣,可分為單步運(yùn)行或全運(yùn)行。在寫完所有程序代碼后,建議用戶先用ctrl+f5進(jìn)行全編譯執(zhí)行,發(fā)現(xiàn)檢查newtimer程序的語法錯(cuò)誤。也可建立一個(gè)測(cè)試工程與newtimer鏈接進(jìn)行測(cè)試,針對(duì)由newtimer類模塊提供的每個(gè)屬性和事件,添加測(cè)試代碼來測(cè)試它們的屬性和方法。按f8,進(jìn)入單步運(yùn)行狀態(tài),逐個(gè)語句察看對(duì)newtimer類模塊的調(diào)用情況。
3.編譯newtimer.dll
完成測(cè)試,排除所有錯(cuò)誤后,從“文件(f)”菜單中選擇“生成newtimer.dll(k)”命令,編譯生成newtimer.dll文件。編譯成功后newtimer.dll文件將自動(dòng)注冊(cè)到windows注冊(cè)表中,
4.引用newtimer.dll
引用activexdll部件同引用其他對(duì)象一樣,從“工程(p)”菜單中選擇“引用(n)”命令,打開引用窗口,從引用列表中選中newtimer對(duì)象。如果是第一次引用newtimer,則在引用窗體上單擊“游覽(b)”命令按鈕,將newtimer.dll文件添加到可引用列表框中方可使用。
5.調(diào)用newtimer.dll
在應(yīng)用程序中加入下述程序代碼,實(shí)現(xiàn)參newtimer.dll的調(diào)用:
optionexplicit
dimwitheventslongtimer1aslongtimer
privatesublongtimer1_tick()
print"時(shí)間到,此處添加處理程序"
endsub
privatesubcommand1_click()
longtimer1.interval=12000‘兩分鐘
longtimer1.enabled=true
endsub
privatesubform_load()
setlongtimer1=newlongtimer
endsub
參考文獻(xiàn)
[2]東箭工作室.visualbasic5.0中文版程序設(shè)計(jì).清華大學(xué)出版社,1997
[3]evangelospetroutsos.visualbasic5從入門到精通.北京:電子工業(yè)出版社,1997
計(jì)算機(jī)技術(shù) 計(jì)算機(jī)維護(hù) 計(jì)算機(jī)安全 計(jì)算機(jī)理論 計(jì)算機(jī)畢業(yè)論 計(jì)算機(jī)軟件 計(jì)算機(jī)英語 計(jì)算機(jī)畢業(yè) 計(jì)算機(jī)病毒 計(jì)算機(jī)網(wǎng)絡(luò) 紀(jì)律教育問題 新時(shí)代教育價(jià)值觀