亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        VB定時器控件的應用實例與研究

        2009-03-25 03:00:18趙俊峰
        中國校外教育(下旬) 2009年12期
        關(guān)鍵詞:控制

        趙俊峰

        [摘要] VB中的定時器控件具有靈活多變、易于控制等特點,在應用程序的開發(fā)中,利用VB定時器控件可以實現(xiàn)時間控制、隨機控制、動畫設計和游戲設計等制作。VB定時器控件和其他控件相結(jié)合,可以制作既靈活又實用的應用程序。

        [關(guān)鍵詞] VB 定時器 控制 Timer

        VB中的定時器控件(Timer)是一個在程序運行時不可見的控件,在程序運行時,每隔若干時間(通過Interval屬性設置)執(zhí)行一次Timer事件中的相應代碼。定時器控件最核心的屬性是Enabled和Interval屬性。利用Enabled可以設置定時器控件是否可用,其取值只有邏輯值True和False兩種。利用Interval屬性可以設置定時器控件激活Timer事件的時間間隔,其單位為毫秒,其取值范圍為0-65535,當取值為0時,定時器控件不可用。由于定時器控件具有靈活多變、易于控制等特點,可以應用于時間控制、隨機控制、動畫制作、游戲制作等應用程序的開發(fā)中。

        一、時間控制

        1.整點播時器

        在實際工作中,有時需要利用計算機實現(xiàn)整點報時的功能,以提醒用戶及時知曉當前時間。整點播時器的功能是:若當前系統(tǒng)時間為整點時(即當前時刻的分鐘數(shù)和秒數(shù)均為0),彈出對話框提示“現(xiàn)在是北京時間X點整”。在設計整點報時器時,定時器控件Timer1的Interval屬性應設置為1000(1000毫秒=1秒),Timer1的timer事件代碼如下:

        Private Sub Timer1_Timer()

        If Second(Time()) = 0 And Minute(Time()) = 0 Then

        a = MsgBox("現(xiàn)在是北京時間" + Str(Hour(Time())) + "點整")

        End If

        End Sub

        2.倒計時器

        在實際生活中,有時需要通過倒計時的方法,讓觀眾隨時了解當前距正式活動(比賽)的時間差。比如奧運會倒計時、開幕式倒計時等等。倒計時器的功能是:先在文本框text1中輸入倒計時的時間(形式為hh:mm:ss),當單擊“開始倒計時”按鈕command1時,每隔一秒鐘,文本框text1中的時間倒退一秒鐘,直到時間為0(00:00:00)時,彈出對話框提示“時間到!!!”。在窗體中應添加按鈕控件(command1)、定時器控件(timer1)和文本框控件(text1)。定時器控件timer1的Interval屬性應設置為1000,Enabled屬性應設置為False。相關(guān)代碼如下:

        Public h, m, s, sum

        Private Sub Command1_Click()

        Timer1.Enabled = True

        End Sub

        Private Sub Timer1_Timer()

        h = Val(Left(Text1.Text, 2))

        m = Val(Mid(Text1.Text, 4, 2))

        s = Val(Right(Text1.Text, 2))

        sum = h * 3600 + m * 60 + s

        sum = sum - 1

        h = sum \ 3600

        m = (sum Mod 3600) \ 60

        s = sum Mod 60

        h = IIf(h < 10, "0" + Trim(Str(h)), Trim(Str(h)))

        m = IIf(m < 10, "0" + Trim(Str(m)), Trim(Str(m)))

        s = IIf(s < 10, "0" + Trim(Str(s)), Trim(Str(s)))

        Text1.Text = h + ":" + m + ":" + s

        If sum = 0 Then

        Timer1.Enabled = False

        x = MsgBox("時間到!!!", "提示")

        End If

        End Sub

        二、隨機控制

        1.搖獎器

        搖獎器功能是根據(jù)搖獎規(guī)則,從規(guī)定的數(shù)字范圍內(nèi)隨機的選出規(guī)定個數(shù)的隨機號碼。下面以體彩22選5為例介紹搖獎器的制作方法。單擊命令按鈕控件command1開始進行搖獎,標簽控件Label1-Label5不斷地隨機顯示抽取出的五個幸運號碼,單擊命令按鈕command2實現(xiàn)抽獎。command1的Caption設置為“搖獎”, command2的Caption設置為“抽獎”,定時器控件Timer1的Interval屬性值為10。相關(guān)代碼如下:

        Private Sub Command1_Click()

        Timer1.Enabled = True

        End Sub

        Private Sub Command2_Click()

        Timer1.Enabled = False

        While Not (Label1.Caption <> Label2.Caption And Label1.Caption <> Label3.Caption And Label1.Caption <> Label4.Caption And Label1.Caption <> Label5.Caption And Label2.Caption <> Label3.Caption And Label2.Caption <> Label4.Caption And Label2.Caption <> Label5.Caption And Label3.Caption <> Label4.Caption And Label3.Caption <> Label5.Caption And Label4.Caption <> Label5.Caption And )

        Label1.Caption = Int(Rnd() * 22+ 1)

        Label2.Caption = Int(Rnd() * 22+ 1)

        Label3.Caption = Int(Rnd() * 22+ 1)

        Label4.Caption = Int(Rnd() * 22+ 1)

        Label5.Caption = Int(Rnd() * 22+ 1)

        Wend

        End Sub

        Private Sub Timer1_Timer()

        Label1.Caption = Int(Rnd() * 22+ 1)

        Label2.Caption = Int(Rnd() * 22+ 1)

        Label3.Caption = Int(Rnd() * 22+ 1)

        Label4.Caption = Int(Rnd() * 22+ 1)

        Label5.Caption = Int(Rnd() * 22+ 1)

        End Sub

        其中,While Not (…) … Wend循環(huán)語句的目的是監(jiān)測隨機抽取的五個號碼是否有重復值,如果有重復值則重新抽取,直到五個號碼各不相同為止。

        2.禮花綻放

        禮花綻放的功能是隨機地出現(xiàn)以窗體中心點為中心的隨機顏色的線條,以模擬禮花綻放效果。只需在窗體中添加定時器控件Timer1,設置其Interval屬性值為10,在定時器控件的Timer事件中利用窗體的line方法實現(xiàn)禮花綻放效果,相關(guān)代碼如下:

        Private Sub Timer1_Timer()

        coulor = RGB(Rnd() * 255, Rnd() * 255, Rnd() * 255)

        x = Rnd() * Form1.Width

        y = Rnd() * Form1.Height

        Form1.Line (Form1.Width/2, Form1.Height/2)-(x,y), coulor

        End Sub

        三、動畫制作

        1.進度條

        在VB應用程序設計中,有時需要通過進度條動畫來表達一些對象的操作進度,如安裝進度、下載進度、完成進度等等。下圖為“進度條制作”的運行界面。標簽控件Label1用于顯示進度比例,標簽控件Label2用于顯示標題“進度條的制作”,形狀控件Shape2為進度框(其屬性BackStyle的值為Transparent),形狀控件Shape1為進度條(其屬性Bordercolor的值&H00FF0000&,屬性BackStyle的值為Opaque)。定時器控件的Interval屬性值為10,其Timer事件代碼如下:

        Private Sub Timer1_Timer()

        Shape1.Width = Shape1.Width + 10

        Label1.Caption = Str(Int(Shape1.Width / Shape2.Width * 100)) + "%"

        If Shape1.Width >= Shape2.Width Then

        Timer1.Enabled = False

        End If

        End Sub

        2.滾動字幕

        在VB應用程序開發(fā)中,可以通過定時器控件(Timer)制作類似網(wǎng)頁中滾動字幕的效果。利用VB可以制作從左往右、從右往左、交替三種方式的滾動字幕效果。下面以“交替”方式的滾動字幕為例介紹滾動字幕的制作方法。交替方式的滾動字幕就是字幕不斷地來回滾動,文字碰到頁面邊界后就向相反方向滾動。在窗體中應添加標簽控件(label1)和定時器控件(timer1)。設置標簽控件label1的caption屬性為“歡迎使用本軟件”,設置定時器控件的Interval屬性值為1。定義全局變量a以控制滾動的方向,相關(guān)代碼如下:

        Public a

        Private Sub Timer1_Timer()

        If a = 0 Then

        Label1.Left = Label1.Left + 10

        If Label1.Left >= Form1.Width - Label1.Width Then a = 1

        End If

        If a = 1 Then

        Label1.Left = Label1.Left - 10

        If Label1.Left <= 0 Then a = 0

        End If

        End Sub四、游戲制作

        VB定時器控件和其他控件結(jié)合,可以制作簡單的游戲。下面以“鍵盤輸入測試”游戲為例進行介紹。此游戲的功能是:由應用程序隨機抽取并顯示10個字母,等待用戶依次輸入。當輸入正確時,抽取并顯示下一個隨機字母。直到抽取十個字母,并均輸入正確為止。最后彈出對話框,顯示輸入速度。此程序需要用到3個公共變量,變量a來記錄隨機抽取出的字母的ASCII值,變量s用來記錄游戲開始時的系統(tǒng)時刻(通過s=timer(),使s賦值為從午夜算起已經(jīng)過的秒數(shù)),變量n用來記錄抽取字母的個數(shù)。通過窗體的KeyDown事件來記錄并檢測按鍵所對應的字母是否正確,如果正確,則設置定時器控件Timer1的Enabled屬性值為True,即讓定時器控件Timer1繼續(xù)下一個隨機字母的抽取和顯示。定時器控件Timer1的Interval屬性應設置為1。相關(guān)代碼如下:

        Public a, s, n

        Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

        If KeyCode = a Then

        Timer1.Enabled = True

        p = 0

        End If

        End Sub

        Private Sub Form_Load()

        s = Timer()

        End Sub

        Private Sub Timer1_Timer()

        Randomize

        a = 65 + Int(Rnd() * 26)

        Label1.Caption = Chr(a)

        n = n + 1

        Timer1.Enabled = False

        If n = 10 Then

        speed = Str(Int((Timer() - s) / 10 * 60))

        MsgBox ("您的速度為" + speed + "字/分鐘")

        End If

        End Sub

        綜上所述,VB定時器控件由于其具有功能靈活、易于控制、操作簡單等優(yōu)點,在軟件開發(fā)中有著廣泛的應用價值。利用VB定時器控件不僅可以實現(xiàn)程序控制和動畫設計的功能,還可以實現(xiàn)簡單游戲的制作。

        參考文獻:

        [1]林信成等.Visual Basic 6入門經(jīng)典[M].北京:中國電力出版社,1999,10.

        [2]劉炳文.二級教程Visual Basic語言程序設計[M].北京:高等教育出版社,2001,10.

        [3]邱玉輝.Visual Basic語言程序設計[M].昆明:云南科技出版社,2002,8.

        本論文為太原大學外語師范學院“基于《計算機公共基礎》的網(wǎng)絡課程設計與研究”的課題成果。

        猜你喜歡
        控制
        關(guān)于工程項目成本管理的分析
        社會轉(zhuǎn)型期行政權(quán)控制的路徑探索
        科技視界(2016年21期)2016-10-17 17:06:18
        淺析應收賬款的產(chǎn)生原因和對策
        商(2016年27期)2016-10-17 05:41:05
        會計預算控制現(xiàn)狀及方法
        淺談高層建筑沉降監(jiān)測關(guān)鍵環(huán)節(jié)控制
        科技視界(2016年20期)2016-09-29 13:07:14
        保險公司財務風險管理及控制研究
        欧美z0zo人禽交欧美人禽交| 精品国产av一区二区三区四区| 久久国产精品偷任你爽任你 | 国产高潮迭起久久av| 999国产精品999久久久久久| 夜夜欢性恔免费视频| 精品91亚洲高清在线观看| 少妇一区二区三区精选| 成年女人免费v片| 色欲人妻综合网| 国产精品自产拍在线观看中文| 色综合久久精品中文字幕| 欧美顶级少妇作爱| 欧美日韩一区二区三区自拍| 精品福利一区| 国产一区二区资源在线观看 | av在线不卡免费中文网| 欧美村妇激情内射| av无码久久久久久不卡网站| 无码AⅤ最新av无码专区| 在线国人免费视频播放| 乱码丰满人妻一二三区| 无码人妻一区二区三区在线视频| 3亚洲日韩在线精品区| 中文字幕在线乱码日本| 日本大乳高潮视频在线观看| 国产精品视频一区国模私拍| 成年毛片18成年毛片| 国产精品日韩经典中文字幕| 欧美人妻日韩精品| 日日摸夜夜添夜夜添一区二区| 久久狠狠髙潮曰十八女人| 亚洲精品无码永久中文字幕| 国产69精品久久久久9999| 青青青国产免A在线观看| 久久精品亚洲成在人线av乱码| 国产亚洲2021成人乱码| 国产精品无码无片在线观看3D | 免费人妻精品区一区二区三| 九九综合va免费看| 国产av无码专区亚洲av|