Boa noite,
Prezados, peguei um modelo simples de figura animada aqui no fórum, adaptei para uma situação que preciso.
As figuras se movimentam para direita e quando chegam no limite do formulário o processo continua, como se as figuras saíssem do outro lado.
Incluir uma terceira figura (Visible3 e Hidden6) voltando, até aí vai tudo bem, mas quando chega no limite do formulário na esquerda, trava e dá erro de limite de tamanho de subformulário, queria que a figura voltasse pela direita.
Código:
Option Compare Database
Dim gfrmWidth
Private Sub Form_Open(Cancel As Integer)
gfrmWidth = Me.Width
End Sub
Private Sub Form_Timer()
Static intPic As Integer
Select Case intPic
Case Is = 1
Me!Visible1.PictureData = Me!Hidden1.PictureData
Me!Visible2.PictureData = Me!Hidden5.PictureData
Me!Visible3.PictureData = Me!Hidden6.PictureData
Case Else
End Select
If intPic = 2 Then intPic = 0
intPic = intPic + 1
If (Me!Visible1.Left > gfrmWidth) Then Me!Visible1.Left = 0
Me!Visible1.Left = Me!Visible1.Left + 200
If (Me!Visible2.Left > gfrmWidth) Then Me!Visible2.Left = 0
Me!Visible2.Left = Me!Visible2.Left + 150
If (Me!Visible3.Left > gfrmWidth) Then Me!Visible3.Left = 0
Me!Visible3.Left = Me!Visible3.Left - 150
End Sub
Prezados, peguei um modelo simples de figura animada aqui no fórum, adaptei para uma situação que preciso.
As figuras se movimentam para direita e quando chegam no limite do formulário o processo continua, como se as figuras saíssem do outro lado.
Incluir uma terceira figura (Visible3 e Hidden6) voltando, até aí vai tudo bem, mas quando chega no limite do formulário na esquerda, trava e dá erro de limite de tamanho de subformulário, queria que a figura voltasse pela direita.
Código:
Option Compare Database
Dim gfrmWidth
Private Sub Form_Open(Cancel As Integer)
gfrmWidth = Me.Width
End Sub
Private Sub Form_Timer()
Static intPic As Integer
Select Case intPic
Case Is = 1
Me!Visible1.PictureData = Me!Hidden1.PictureData
Me!Visible2.PictureData = Me!Hidden5.PictureData
Me!Visible3.PictureData = Me!Hidden6.PictureData
Case Else
End Select
If intPic = 2 Then intPic = 0
intPic = intPic + 1
If (Me!Visible1.Left > gfrmWidth) Then Me!Visible1.Left = 0
Me!Visible1.Left = Me!Visible1.Left + 200
If (Me!Visible2.Left > gfrmWidth) Then Me!Visible2.Left = 0
Me!Visible2.Left = Me!Visible2.Left + 150
If (Me!Visible3.Left > gfrmWidth) Then Me!Visible3.Left = 0
Me!Visible3.Left = Me!Visible3.Left - 150
End Sub