国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

用VB編寫“紅綠燈”程序

2019-11-18 17:28:46
字體:
來源:轉載
供稿:網友
平時我們在過馬路的時候常常會看到指揮交通的紅綠燈,它的權利可大了,要是我們可以控制它就好了,雖然在現實生活中辦不到,就讓我們編寫一個虛擬的紅綠燈程序,也來過過控制紅綠燈的癮。

  下面我們就開始編寫吧。

  第一件事當然是新建一個工程,然后引入所需控件。在“紅綠燈”程序中,我們需要用到的控件有:OptionButton(選項按鈕)、Image(圖像框)及Timer(時鐘)控件。引入兩個OptionButton,其中Option1的Caption設置為“紅燈”,Option2的Caption設置為“綠燈”;Image1的Picture屬性設置為紅燈圖片,選擇一張紅燈圖片(讀者可以自己創建一個紅燈及綠燈圖片)。設計好的程序界面如圖1。

  好了,現在我們開始添加程序代碼。

  我們要求程序能夠通過我們所選擇的是紅燈或綠燈來顯示相應的圖像,實現的原理就是當我們單擊“紅燈”時顯示紅燈圖片,單擊“綠燈”時顯示綠燈圖片,只要用戶準備好這兩張圖片后,要實現這個功能就非常的容易了。其具體的程序代碼如下:

  雙擊Option1(即紅燈)控件,添加如下代碼:(黑體部分為系統自動生成的代碼,下同)
  PRivateSubOption1_Click()
  ′顯示紅燈圖片
  OnErrorGoToLoadErr ′當載入圖片發生錯誤時跳到LoadErr處
  IfOption1.Value=TrueThen ′當單擊了Option1控件時
  Image1.Picture=LoadPicture(″C:/Windows/Desktop/red.jpg″) ′載入red.jpg圖片,并顯示在Image1控件中。
  EndIf
  LoadErr: ′設置捕獲錯誤標簽
  IfErr.Number=53Then ′當發生錯誤時
   MsgBoxErr.Description,vbOKOnly+vbCritical,″錯誤″ ′顯示錯誤信息
  EndIf
  EndSub

  上面一段代碼中有一句“OnErrorGotoLoadErr”,該句是用作捕獲程序錯誤的,當程序執行過程中發生了錯誤則跳到處理錯誤語句處執行。在這段代碼中,如果在載入圖片時發生了錯誤(通常是所要載入的文件不存在或路徑錯誤)則跳到LoadErr處執行LoadErr后的程序代碼。

  在VB中,所有的程序錯誤都是用數字表示的,如53則表示未找到文件的錯誤碼,其實要知道哪個錯誤碼表示哪種錯誤也并不難,當你在VB中運行這個程序時,如果出現了錯誤,會有一個錯誤的提示框,在該提示框中則有該錯誤的錯誤碼。如果我們沒有在該段程序中加入“OnErrorGotoLoadErr”語句及給出錯誤的文件名或文件路徑的話,則會出現如圖2所示的提示框。

  LoadPicture是載入圖片的函數,其中第一個參數則是所要載入圖片的完整路徑,當然在本例中這個路徑是固定了的,所要想使其路徑隨程序路徑的變化而變化則需要使用App.Path值,可以寫成Image1.Picture=LoadPicture(App.Path&″/red.jpg″),其中App.Path返回的值則是程序所在的路徑,當然red.jpg必須放在程序所在的同一目錄中。

  雙擊Option2(即綠燈)控件,添加如下代碼:

  PrivateSubOption2_Click()
  ′顯示綠燈圖片
  OnErrorGoToLoadErr ′當載入圖片發生錯誤時跳到LoadErr處
  IfOption2.Value=TrueThen ′當單擊了Option2控件時
  Image1.Picture=LoadPicture(″C:/Windows/Desktop/green.jpg″) ′載入green.jpg圖片,并顯示在Image1控件中。
  EndIf
  LoadErr: ′設置標簽
  IfErr.Number=53Then ′當發生錯誤時
   MsgBoxErr.Description,vbOKOnly+vbCritical,″錯誤″ ′顯示錯誤信息
  EndIf
  EndSub

  OK!現在我們就可以單擊F5鍵運行一下,看看我們自制的“紅綠燈”程序吧。點擊一下“綠燈”看看,紅燈變成綠燈了吧?再試試紅燈,怎樣?現在我們就可以控制紅綠燈了吧。

  如何才能讓“紅綠燈”自動更換呢?要實現這個功能也非常簡單,只要加入Timer(時鐘)控件,將Timer1的Interval設置為3000(即3秒)。其原理就是每隔3秒更換一種圖片,這樣便實現了自動更換。

  雙擊Timer1控件,添加如下代碼:

  PrivateSubTimer1_Timer()
  ′實現自動化
  IfOption1.Value=TrueThen ′如果當前顯示的是紅燈
   Option2.Value=True ′使Option2被選中,執行Option2中的代碼(即顯示綠燈)
  Else
   Option1.Value=True ′使Option1被選中,執行Option1中的代碼(即顯示紅燈)
  EndIf
  EndSub

  單擊F5鍵運行一下,每隔3秒鐘即換一種顏色顯示。就這么幾句代碼就實現了自動化,簡單吧?

->


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 德保县| 乡城县| 双城市| 长阳| 磐石市| 大冶市| 长海县| 香格里拉县| 宕昌县| 泰兴市| 关岭| 大城县| 广水市| 拉萨市| 玉林市| 汉沽区| 页游| 德阳市| 阳山县| 尉氏县| 金湖县| 嵩明县| 樟树市| 时尚| 舒兰市| 新乡市| 平果县| 彝良县| 将乐县| 高雄县| 涟水县| 健康| 西乌| 饶平县| 伊金霍洛旗| 贺兰县| 新化县| 岫岩| 西贡区| 华安县| 达拉特旗|