1、 在桌面上,鼠标左键双击,打开VB编程软件,在左边工具栏上单击Image按钮,在Form1窗口上,绘制出图框,然后在Image属性面板的Picture属性上,单击【加载图片】按钮。
2、 接着,在d出选取图片对话框,选择合适的红绿灯素材来体现效果,这里先选取了一张红灯的图片。
3、在Image属性面板的名称属性上,将其改名为red,标识后就不会与其他图混淆。
4、在VB编程的界面中也可以直接复制控件,如将red这个Image控件复制两个出来,不加入控件组,并将后两个依次改名为yellow、green。
5、 然后,将yellow图形控件与red控件重叠,并右键单击,在d出的菜单中选择【移至底层】,放好后,green 图形控件放在最底层。三个图形控件依红、黄、绿的顺序叠加重合了。
6、接着,鼠标左键双击red图形控件,d出输入代码窗口,在其上输入如下代码段。
这个比较简单。label是方的,不是圆的,所以我使用shape做了灯。1、界面添加控件:一个计时器(timer)、一个形状(shape)、两个水平滚动条。
2、代码如下:
Dim 红灯时间 As Integer, 绿灯时间 As Integer, 红灯 As Boolean, 当前时间 As Integer
Private Sub Form_Load()
Shape1.Shape = 3
Shape1.FillStyle = 0
Shape1.FillColor = vbRed
Shape1.BorderColor = vbRed
Timer1.Interval = 1000
红灯 = True
HScroll1.Min = 1
HScroll1.Max = 100
HScroll1.Value = 5
HScroll2.Min = 1
HScroll2.Max = 100
HScroll2.Value = 5
End Sub
Private Sub HScroll1_Change()
红灯时间 = HScroll1.Value
红灯 = True
当前时间 = 0
End Sub
Private Sub HScroll2_Change()
绿灯时间 = HScroll2.Value
红灯 = False
当前时间 = 0
End Sub
Private Sub Timer1_Timer()
当前时间 = 当前时间 + 1
If 红灯 Then
If 当前时间 = 红灯时间 Then
红灯 = False
当前时间 = 0
Shape1.FillColor = vbGreen
Shape1.BorderColor = vbGreen
End If
Else
If 当前时间 = 绿灯时间 Then
红灯 = True
当前时间 = 0
Shape1.FillColor = vbRed
Shape1.BorderColor = vbRed
End If
End If
End Sub
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)