SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: abelsql3000 en Domingo 29 de Abril de 2007, 03:20

Título: Curiosidad Al Desplazar Un Control
Publicado por: abelsql3000 en Domingo 29 de Abril de 2007, 03:20
He creado la siguiente aplicacion donde se desplaza por un formulario un control etiqueta
Dim y As String
Dim x As Integer
Private Sub Timer1_Timer()
x = x + 1
y = x
Me.Caption = y
lbletiqueta.Left = lbletiqueta.Left + 100
If lbletiqueta.Left = 5000 Then lbletiqueta.Left = -500
End Sub

Si me funciona pero el control deja rastros en el formulario, ya le puese la propiedad transparente al formulario y nada, en que me estoy equivocando
Por se acaso adjunto el archivo
Ayudame tambien para poder mover la etiqueta por todo el formulario en forma aleatoria, osea que revote por todo el formulario tipo PROTECTOR de Pantalla de Windows.
De antemano gracias por el aporte
Abel
Título: Re: Curiosidad Al Desplazar Un Control
Publicado por: Epa en Domingo 29 de Abril de 2007, 04:39
Buenas.

Por que se produce no tengo idea xD

Pero lo que pude ver es q solo se produce cuando la palabra empieza con a mayuscula.

Puedes ponerla un espacio en blanco la label antes de Abel y no lo hara mas.

Saludos :hola:
Título: Re: Curiosidad Al Desplazar Un Control
Publicado por: F_Tanori en Domingo 29 de Abril de 2007, 07:36
Pue si es algo curioso y es verdad no todas las letras dejan rastro de esa fuente

ami me funciono cambiando la propiedad ed la etiqueta AutoSize=False y funcion


Para hacerlo rebotar puedes guiarte con esto

Código: Text
  1.  
  2. Dim ARRIBA_ABAJO  As Integer, IZQUIERDA_DERECHA As Integer, AVANCE As Integer
  3. Private Sub Form_Load()
  4.     ARRIBA_ABAJO = 1
  5.     IZQUIERDA_DERECHA = 1
  6.     AVANCE = 100
  7. End Sub
  8.  
  9. Private Sub Timer1_Timer()
  10.    
  11.     If (lbletiqueta.Top) <= 0 Then ARRIBA_ABAJO = 1: Beep
  12.     If (lbletiqueta.Left) <= 0 Then IZQUIERDA_DERECHA = 1: Beep
  13.    
  14.     If (lbletiqueta.Top + lbletiqueta.Height) + (AVANCE + 150) >= Me.Height Then ARRIBA_ABAJO = -1
  15.     If (lbletiqueta.Left + lbletiqueta.Width) >= Me.Width Then IZQUIERDA_DERECHA = -1
  16.    
  17.     lbletiqueta.Left = lbletiqueta.Left + (AVANCE * (IZQUIERDA_DERECHA))
  18.     lbletiqueta.Top = lbletiqueta.Top + (AVANCE * (ARRIBA_ABAJO))
  19.     DoEvents
  20.        
  21. End Sub
  22.  


Saludos mi estimado Abel espero te ayude
Título: Re: Curiosidad Al Desplazar Un Control
Publicado por: Miguel_ACL en Domingo 29 de Abril de 2007, 08:03
Después de que hagas el movimiento pon la instrucción Cls, verás que tu problema queda resuelto.