用vb6做红绿灯,要绿灯20秒,绿灯10,红灯30秒。该这么做

 我来答
书海中的秘密
2016-01-06 · TA获得超过536个赞
知道小有建树答主
回答量:355
采纳率:25%
帮助的人:78.3万
展开全部
一、控件
1、示范图,直接画个图,然后加载到 Picture1 中。
2、灯。圆形,用 Shape 控件,组不组控件数组随意。
3、倒计时。用 Label 控件。
4、按钮。我这里用的是二个 Check 控件。内容:自动,手动。
另 手动中所示二个按钮,使用的是 Option 。
关闭按钮,使用的才是:Command
5、另放一个计时器(timer),Interval :1000 , Enabled :False
二、方法
1、常量:
Const TXDR = 55 '通行东西红灯时间
Const TXLR = 60 '通行南北红灯时间
Const TXH = 5 '通行黄灯时间
2、变量,一个计时用的变量,一个表示状态的变量。
状态的变量可用或不用,用的话,可以节省CPU处理时间。
3、响应事件。
自动,手动,需要响应事件。我的代码主要写在计时器里,所以 这个响应事件很简单。

程序代码:
Private Sub Check1_Click() '点击自动
If Check1.Value = 1 Then '如果自动开
Check2.Value = 0 '手动关
DoEvents '等待手动关响应执行完
TXjs = 0
Timer1.Enabled = True '开定时器
Else '否则
Timer1.Enabled = False '关定时器
End If
End Sub

Private Sub Check2_Click() '点击手动
If Check2.Value = 1 Then '如果手动关
Check1.Value = 0 '自动关
DoEvents '等待自动关响应执行完
TXjs = 0
Timer1.Enabled = True '开定时器
Else '否则
Timer1.Enabled = False '关定时器
End If
End Sub

4、定时器里。
首先,计时,每1秒,自加1
当 计时的结果超过一个周期,置 0
对 计时结果进行 多分支选择。
Select Case TXjs
Case Is < TXDR '东西红
Case Is < TXDR + TXH '东西黄
Case Is < TXDR + TXH + TXLR '南北红
Case Is < TXDR + TXH + TXLR + TXH '南北红
Case Else
TXjs = 0
End Select
每个分支中,单独对四个灯和四个倒计时分别指定。

手动部分,没什么,判断一下,然后直接指定,不解释了。

程序代码:
If Check2.Value = 1 Then
If Option1.Value = True Then
Shape1(0).FillColor = vbRed
Shape1(1).FillColor = vbRed
Shape1(2).FillColor = vbGreen
Shape1(3).FillColor = vbGreen
'Label1(0).ForeColor = vbRed
'Label1(1).ForeColor = vbRed
'Label1(2).ForeColor = vbGreen
'Label1(3).ForeColor = vbGreen

Label4.Caption = "南北:绿"
Label5.Caption = "东西:红"
DoEvents
Else
Shape1(0).FillColor = vbGreen
Shape1(1).FillColor = vbGreen
Shape1(2).FillColor = vbRed
Shape1(3).FillColor = vbRed
'Label1(0).ForeColor = vbGreen
'Label1(1).ForeColor = vbGreen
'Label1(2).ForeColor = vbRed
'Label1(3).ForeColor = vbRed

Label4.Caption = "南北:红"
Label5.Caption = "东西:绿"
DoEvents
End If

Label1(0).Caption = "∞"
Label1(1).Caption = "∞"
Label1(2).Caption = "∞"
Label1(3).Caption = "∞"

End If

性质是一样的 你看看吧
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式