Cada tres segundos cambia la imagen de fondo del formulario aleatoriamente entre 6 imagenes. Si pasas el raton por encima del formulario, el formulario se mueve por la pantalla para que no puedas cogerlo. Si le pulsas a la X para cerrarlo, abre un nuevo formulario igual. Y todo va bien hasta aqui. Cuando pulso la X si abre un nuevo formulario, pero yo quiero que el nuevo formulario siga con las propiedades del inicial, y en el primero se ven las fotos cambiando, y al pinchar en la X y en las sucesivas vece que se pinchen se abren nuevos formularios, pero en estos formularios no se cargan las fotos. Osea solo el primero funciona bien y aunque luego se abre el formuliario en este no aparecen fotos ni nada.
Este es el codigo, gracias:
Código:
Dim ancho As Integer
Dim alto As Integer
Dim altornd As Integer
Dim anchornd As Integer
Dim ventana() As Form
Dim j As Byte
Private Sub Form_Load()
cambia
alto = Screen.Height
ancho = Screen.Width
altornd = calculo(alto)
anchornd = calculo(ancho)
If altornd > alto - Form1.Height Then
altornd = alto - Form1.Height
End If
If anchornd > ancho - Form1.Width Then
anchornd = ancho - Form1.Width
ElseIf anchornd < Form1.Width Then
anchornd = 0
End If
Form1.Top = altornd
Form1.Left = anchornd
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
alto = Screen.Height
ancho = Screen.Width
altornd = calculo(alto)
anchornd = calculo(ancho)
If altornd > alto - Form1.Height Then
altornd = alto - Form1.Height
End If
If anchornd > ancho - Form1.Width Then
anchornd = ancho - Form1.Width
ElseIf anchornd < Form1.Width Then
anchornd = 0
End If
Form1.Top = altornd
Form1.Left = anchornd
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If UnloadMode = 0 Then 'Significa que se ha cerrado con la X:
i = i + 1
ReDim Preserve ventana(1 To i)
Set ventana(i) = New Form1
ventana(i).Show
Cancel = 1
End If
End Sub
Public Function calculo(valor)
calculo = Int(Rnd * valor)
End Function
Private Sub cambia()
j = Rnd * 6
Select Case j
Case 1
Form1.Picture = Image1.Picture
Case 2
Form1.Picture = Image2.Picture
Case 3
Form1.Picture = Image3.Picture
Case 4
Form1.Picture = Image4.Picture
Case 5
Form1.Picture = Image5.Picture
Case 6
Form1.Picture = Image6.Picture
End Select
End Sub
Private Sub Timer1_Timer()
cambia
End Sub