Cambiar el color de un label al pasar el mouse.

Les agradecería si alguien sabe como se cambia el color de un label, al pasar el mouse por encima, y que retome su color original, si el mouse ya no esta sobre el.

Daniel Riveros

1 respuesta

Respuesta
2

Supongo que todo está en un formulario UserForm1, y que el label se llama Label1. Y que el Label1 se pone de color verde de fondo cuando se pasa el ratón sobre él

Tienes que hacer que se ponga verde con el evento MouseMove, pero no hay evento para cuando el ratón deja de estar encima. Entonces debes hacer que el evento MouseMove del fondo del formulario y el resto de los controles si están pegados devuelva el color original al Label1.

Esto de aquí puede servirte, son las subrutinas y declaración de la variable ColorOriginal que deberías añadir al módulo del UserForm1

Private ColorOriginal
Private Sub Label1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label1.BackColor = vbGreen
End Sub
Private Sub TextBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label1.BackColor = ColorOriginal
End Sub
Private Sub UserForm_Activate()
ColorOriginal = Label1.BackColor
End Sub
Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Label1.BackColor = ColorOriginal
End Sub

Y eso es todo, espero que te sirva y lo hayas entendido. Si no es asi preguntaúntame, y si ya está bien no olvides puntuar.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas