如何不断更改mdi表单的背景图片?

时间:2015-08-31 12:45:43

标签: vb6

我正在vb6中做一个项目。我想知道如何在加载后立即更改MDI的背景图像。

我尝试制作一组​​图像,然后设置计时器 这是我的代码

Private Sub Timer1_Timer()
    For i = 0 To 2
        Picture1.Picture = LoadPicture(arr(i))
        i = i + 1

        If i = 3 Then
            i = 0
        End If
    Next i
End Sub

Private Sub MDIForm_Load()
    arr(0) = "images\Shop.jpg"
    arr(1) = "images\Display1.jpg"
    arr(2) = "images\Display2.jpg"
end sub

请帮忙 谢谢

1 个答案:

答案 0 :(得分:0)

您编写的代码存在一些问题。首先,您不需要使用图片框,MDI表单应该具有您可以直接设置的图片属性。

其次,正如所写的那样,每次定时器事件触发时,你都会循环遍历数组中的所有图像。你真正想要的是每个计时器事件的一次更改,并在每个计时器事件结束时存储/增加数组索引,如下所示:

Private Sub Timer1_Timer()
    MDIForm.Picture = LoadPicture(arr(arrIndex))
    If arrIndex + 1 <= UBound(arr) Then
        arrIndex = arrIndex + 1
    Else
        arrIndex = 0
    End If
End Sub

Dim arrIndex as Integer

Private Sub MDIForm_Load()
    arr(0) = "images\Shop.jpg"
    arr(1) = "images\Display1.jpg"
    arr(2) = "images\Display2.jpg"
    arrIndex = 0
end sub

arrIndex的Dim应位于MDIForm的顶部。每次定时器事件触发时,这都会改变背景图片。