Principales respuestas
Sumar en variable al presionar click derecho mouse

Pregunta
-
Buen dia, les escribo para pedirles por favor me ayuden con la siguiente duda, aunque suena sencillo no e encontrado mucha informacion al respecto, lo que quiero es que cada vez que presione el click derecho del mouse una variable se encremente en 1, de antemano muchas gracias
Alvaro Fabian M:.
Respuestas
-
Declara una variable a nivel de la clase que se incrementará en uno por cada clic que el usuario realice -por ejemplo- sobre el formulario.
Dim ContadorClic As Integer = 0 Private Sub Form1_MouseClick(sender As Object, e As MouseEventArgs) Handles Me.MouseClick If e.Button = MouseButtons.Right Then '¿Se trata del botón derecho del mouse? ContadorClic += 1 'Validar MessageBox.Show(String.Format("{0} clic", ContadorClic)) End If End Sub
Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.- Marcado como respuesta Alvaro Fabian M martes, 21 de febrero de 2017 17:26
-
Muchas gracias por la pronta respuesta te comento que me funciono para todos los label e imagenes pero no para listbox ni botones, pero pude solucionarlo cambiando el mouse.click por elemento.mousedown
Alvaro Fabian M:.
- Marcado como respuesta Joyce_ACModerator miércoles, 22 de febrero de 2017 16:00
Todas las respuestas
-
Declara una variable a nivel de la clase que se incrementará en uno por cada clic que el usuario realice -por ejemplo- sobre el formulario.
Dim ContadorClic As Integer = 0 Private Sub Form1_MouseClick(sender As Object, e As MouseEventArgs) Handles Me.MouseClick If e.Button = MouseButtons.Right Then '¿Se trata del botón derecho del mouse? ContadorClic += 1 'Validar MessageBox.Show(String.Format("{0} clic", ContadorClic)) End If End Sub
Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.- Marcado como respuesta Alvaro Fabian M martes, 21 de febrero de 2017 17:26
-
-
Hola william, te queria preguntar si tu sabes como hacer que la variable se incremente al darle click derecho sobre cualquier objeto ya que como tu me dices solo se incrementa cuando el puntero esta sobre el form pero cuando esta sobre un boton o una imagen no me incrementa la variable, una solucion creo que seria hacer lo de la deteccion del click sobre cada evento de cada elemento del formulario pero no me parece muy optimo, si conoces otra forma de solucionar esto te lo agradeceria
Alvaro Fabian M:.
-
No estoy seguro si existe alguna automatización que permita utilizar el evento clic con independencia del control sobre el que actúa, lo que yo haría es vincular el evento del control Clic a todos los controles del formulario.
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load For Each Ctrl As Control In Me.Controls AddHandler Ctrl.MouseClick, AddressOf Control_MouseClick Next End Sub
Dim ContadorClic As Integer = 0 Private Sub Control_MouseClick(sender As Object, e As MouseEventArgs) If e.Button = MouseButtons.Right Then '¿Se trata del botón derecho del mouse? ContadorClic += 1 'Validar MessageBox.Show(String.Format("{0} clic", ContadorClic)) End If End Sub
Por lo pronto, esto funcionará en tanto no tengas controles anidados.
Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
-
Muchas gracias por la pronta respuesta te comento que me funciono para todos los label e imagenes pero no para listbox ni botones, pero pude solucionarlo cambiando el mouse.click por elemento.mousedown
Alvaro Fabian M:.
- Marcado como respuesta Joyce_ACModerator miércoles, 22 de febrero de 2017 16:00