用VB编写“红绿灯”程序

2016-02-19 20:15 229 1 收藏

只要你有一台电脑或者手机,都能关注图老师为大家精心推荐的用VB编写“红绿灯”程序,手机电脑控们准备好了吗?一起看过来吧!

【 tulaoshi.com - 编程语言 】

平时我们在过马路的时候常常会看到指挥交通的红绿灯,它的权利可大了,要是我们可以控制它就好了,虽然在现实生活中办不到,就让我们编写一个虚拟的红绿灯程序,也来过过控制红绿灯的瘾。

  下面我们就开始编写吧。

  第一件事当然是新建一个工程,然后引入所需控件。在“红绿灯”程序中,我们需要用到的控件有:OptionButton(选项按钮)、Image(图像框)及Timer(时钟)控件。引入两个OptionButton,其中Option1的Caption设置为“红灯”,Option2的Caption设置为“绿灯”;Image1的Picture属性设置为红灯图片,选择一张红灯图片(读者可以自己创建一个红灯及绿灯图片)。设计好的程序界面如图1。

  好了,现在我们开始添加程序代码。

  我们要求程序能够通过我们所选择的是红灯或绿灯来显示相应的图像,实现的原理就是当我们单击“红灯”时显示红灯图片,单击“绿灯”时显示绿灯图片,只要用户准备好这两张图片后,要实现这个功能就非常的容易了。其具体的程序代码如下:
  

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  双击Option1(即红灯)控件,添加如下代码:(黑体部分为系统自动生成的代码,下同)
  PrivateSubOption1_Click()
  ′显示红灯图片
  OnErrorGoToLoadErr ′当载入图片发生错误时跳到LoadErr处
  IfOption1.Value=TrueThen ′当单击了Option1控件时
  Image1.Picture=LoadPicture(″C:WindowsDesktoped.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&″ed.jpg″),其中App.Path返回的值则是程序所在的路径,当然red.jpg必须放在程序所在的同一目录中。

  双击Option2(即绿灯)控件,添加如下代码:

 

  PrivateSubOption2_Click()
  ′显示绿灯图片
  OnErrorGoToLoadErr ′当载入图片发生错误时跳到LoadErr处
  IfOption2.Value=TrueThen ′当单击了Option2控件时
  Image1.Picture=LoadPicture(″C:WindowsDesktopgreen.jpg″) ′载入green.jpg图片,并显示在Image1控件中。
  EndIf
  LoadErr: ′设置标签
  IfErr.Number=53Then ′当发生错误时
   MsgBoxErr.Description,vbOKOnly+vbCritical,″错误″ ′显示错误信息
  EndIf
  EndSub
  

  OK!现在我们就可以单击F5键运行一下,看看我们自制的“红绿灯”程序吧。点击一下“绿灯”看看,红灯变成绿灯了吧?再试试红灯,怎样?现在我们就可以控制红绿灯了吧。

  如何才能让“红绿灯”自动更换呢?要实现这个功能也非常简单,只要加入Timer(时钟)控件,将Timer1的Interval设置为3000(即3秒)。其原理就是每隔3秒更换一种图片,这样便实现了自动更换。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  双击Timer1控件,添加如下代码:

 

  PrivateSubTimer1_Timer()
  ′实现自动化
  IfOption1.Value=TrueThen ′如果当前显示的是红灯
   Option2.Value=True ′使Option2被选中,执行Option2中的代码(即显示绿灯)
  Else
   Option1.Value=True ′使Option1被选中,执行Option1中的代码(即显示红灯)
  EndIf
  EndSub

  单击F5键运行一下,每隔3秒钟即换一种颜色显示。就这么几句代码就实现了自动化,简单吧?

->

来源:http://www.tulaoshi.com/n/20160219/1623148.html

延伸阅读
一、界面设计 新建一个标准的EXE工程。在Form1窗体中放置一个定时器(Timer1)、两个文本框(Label1,Label2)、两个命令按钮(Command1,Command2)和包含7个元素的控件数组(Label3(0)Label3(6))。 二、属性设置 Label3控件数组中的所有元素皆采用相同设置。 三、代码编写 本程序的实现原理是:当用户单击...
在WINDOWS里,右下角有许多应用程序的图标。而程序本身的窗口是隐藏的,若你需要调用应用程序的窗口,则双击该图标即可。这种程序称为托盘程序。这是WINDOWS98操作系统的一大特色。使用户能够更加快捷的显示和隐藏应用程序,可以使任务栏不致于太乱。托盘程序在Visual Basic里是怎么实现的呢? 编写托盘程序主要解决两个问题: ...
我行我素的独行侠的婆婆 你的婆婆是哪种类型,做做以下的测试,让心中先有个底。 1、你的婆婆是一丝不苟的人? yes-2 no-5 2、你的婆婆想法比一般人较悲观? YES-6 NO-3 3、常有人来找你的婆婆商量事情? YES-7 NO-4 4、你的婆婆很爱吃醋? YES-8 NO-6 5、你的婆婆给人的第一印象通常很好? YES-9 NO-6 6、你的婆婆和公...
一、WindowsCGI ----通用网关接口CGI是服务器与应用程序之间的接口,在编写HTML文件时可结合其他程序语言使客户通过浏览器将数据输入到文件里,经服务器处理后转送给客户或记录在服务器的数据库中。任何一种程序设计语言写的程序,若可在服务器主机上运行并可用CGI接口来传递数据,就可作为CGI应用程序,这种语言可被称为CGI程序语言或脚本...
三、CGI编程实例 本节将用VB编写一个处理主页客户留言簿的CGI程序。除了要调用本文前面所介绍的Win32API函数外,程序中还调用了Win32API函数GetTempFileName()来获得一个唯一的临时文件名。程序中的函数UrlDecode()用来对客户端的输入进行URL译码。函数GetCgiValue()则用来分解字符串,根据表单元素的NAME属性获取其VALUE值,并调用Ur...

经验教程

462

收藏

43
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部