首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

关于一段代码的批改

2013-02-25 
关于一段代码的修改本帖最后由 bcrun 于 2013-02-03 14:02:05 编辑各位大虾Private Sub Timer1_Timer()i

关于一段代码的修改
本帖最后由 bcrun 于 2013-02-03 14:02:05 编辑 各位大虾


Private Sub Timer1_Timer()
i = i + 1
If i = 0 Then
Picture1(0).Visible = True
Else
Picture1(0).Visible = False
End If
If i = 1 Then
Picture1(1).Visible = True
Else
Picture1(1).Visible = False
End If
If i = 2 Then
Picture1(2).Visible = True
i = -1
Else
Picture1(2).Visible = False
End If
End Sub



我这是做了三个picture控件,想利用时间控件来控制它们一个个轮流显示,如果有30个,那如何改成一个命令来达到效果,谢谢!
[解决办法]
Private Sub Timer1_Timer()
static i as long
   select case i
   case 0
        Picture1(29).Visible =false
        Picture1(0).Visible =true
        i=i+1
   case 29
        Picture1(28).Visible =false
        Picture1(29).Visible =true
        i=0
   case else
        Picture1(i-1).Visible =false
        Picture1(i).Visible =true
        i=i+1
   end select   
next

End Sub

[解决办法]
Private Sub Timer1_Timer()
    static I as long
    dim J as long

    for j=picture1.lbound to picture1.ubound
        picture1(j).visible=false
    next
    picture1(i).visible=true
    i=i+1
    if i=j then i=0
End Sub

这样无论多少个都会自动循环.
[解决办法]
呵呵,老马有创意。照样改一版:


Private Sub Timer1_Timer() 
Dim j As Iteger

i = (i + 1) Mod Picture1.Count

For j = 0 To Picture1.Count - 1
    Picture1(0).Visible = IIf(j = i, True, False)
Next j
End Sub

热点排行