El evento MouseDown está disponible para muchos controles en el formulario. Un formulario puede detectar cuando el ratón se mantuvo presionado sobre él; un cuadro de texto puede detectar cuando el ratón fue que se mantiene dentro de ella; y un botón puede detectar qué botón del ratón se mantuvo para hacer el clic.

Veremos cómo funciona todo ahora mismo.

Primero, borre todos los botones de su formulario, excepto uno. (Puedes hacer clic con el botón derecho en un control para eliminarlo. Si no has estado siguiendo desde el anterior lección, y luego simplemente crear un nuevo proyecto. Añade un botón a tu formulario, y deja en el nombre por defecto de Botón1.)

Vuelve a tu ventana de codificación y borra cualquier código para el botón de tu formulario. Borra cualquier código de Manejar excepto el de Botón de Manejar1.Click. Tu ventana de codificación debería ser algo como esto (hemos usado un subrayado para extender el código de salida en dos líneas):

El evento MouseDown en VB .NET

Justo en la parte superior de la ventana del código, dice Botón1 y Haga clic en . (El usuario de Visual Studio 2015 verá otro cuadro desplegable en el a la izquierda de Botón1, que debería decir Eventos, el nombre de su proyecto.) El rayo El cerrojo junto a Click significa que es un evento. Si haces clic en el menú desplegable verán una lista de otros eventos disponibles:

El evento MouseDown en VB .NET

Desplácese hacia abajo y encuentre el evento MouseDown, como en la imagen de arriba. Al hacer clic en él, aparece un nuevo código, éste (el nuestro parece un poco desordenado):

El evento MouseDown en VB .NET

Esta es una subrutina privada llamada Button1_MouseDown . Fíjese que Maneja el evento Button1 MouseDown , y no Button1.Click.

Explorando los argumentos del evento

Entre los corchetes redondos de la subrutina, todavía tenemos el remitente como Objeto . Pero ahora tenemos un nuevo argumento:

e As MouseEventArgs

El nombre de la variable sigue siendo e . Pero el tipo de objeto que se almacena dentro de la variable e es diferente:

MouseEventArgs

Esto significa Mouse Events Arguments. Lo que está siendo almacenado dentro de la e la variable es información sobre el evento del ratón: ¿Hiciste clic en un botón, si es así, ¿cuál?

Lo único que hay que hacer para detectar qué botón fue presionado es acceder una propiedad de la variable e . Veamos cómo hacerlo.

¿Qué botón se pulsó?

Dentro de la subrutina Button1_MouseDown, escribe el siguiente código:

Si e.Button = MouseButtons.Right Then

MessageBox.Show("Botón derecho pulsado")

Finalizar si

Tan pronto como escribas la letra "e", verás este cuadro emergente:

El evento MouseDown en VB .NET

Para detectar qué botón se pulsó, se necesita la primera propiedad en la lista: Botón . Haz doble clic en esta propiedad para añadirla a tu código. Luego, después de escribir el signo de igualdad, aparece otra lista emergente. Ésta:

El evento MouseDown en VB .NET

Esta es una lista de los botones disponibles que VB puede detectar. Izquierda y Las correctas son las que usarás más a menudo.

Cuando hayas añadido la declaración "Si", tu ventana de codificación debería ...se ven algo como esto:

El evento MouseDown en VB .NET

Cuando termines de escribir tu código, ejecuta tu programa. Haz clic en el botón con el botón izquierdo del ratón y no pasará nada. Haz clic con el botón derecho botón del ratón y deberías ver la pantalla del cuadro de mensajes.

No más lectura de estas lecciones en línea - ¡consigue el eBook aquí!

MouseDown y la forma

Detenga su programa. Cuando regrese al entorno de codificación, haga clic en la flecha hacia abajo del Botón1 en la parte superior del código. Verás un cuadro desplegable como esto:

El evento MouseDown en VB .NET

Seleccione el que está resaltado en la imagen, "Eventos de Form1". En el cuadro de Eventos a la derecha, seleccione MouseDown de la lista de eventos. Un nuevo código aparecerá:

El evento MouseDown en VB .NET

Esta vez, tenemos una subrutina privada llamada Form1_MouseDown . Los dos argumentos son exactamente los mismos que antes. La diferencia es que ahora este código maneja el evento MouseDown para algo llamado MyBase . (Este es un objeto que se refiere al código de la Forma de Clase Pública1).

Lo importante que hay que tener en cuenta es que ahora tenemos una forma de detectar cuando un botón del ratón fue pulsado en la propia forma.

Añade el siguiente código dentro de Form1_MouseDown:

Si e.Button = MouseButtons.Right Then

MessageBox.Show("Usted hizo clic en el formulario")

Finalizar si

Lo único que ha cambiado es el buzón de mensajes. La declaración de "Si"... es exactamente lo mismo. Ejecute su programa y pruébelo. Haga clic en cualquier lugar de su Formulario, y deberías ver el nuevo cuadro de mensajes. Sin embargo, si haces clic con el botón derecho del ratón en el botón, obtendrás el viejo buzón de mensajes. Aunque el botón está en el formulario, esto se considera un control separado de la propia Forma. Así que tiene su propio eventos.

Puedes detectar en qué parte de la forma estaba el ratón cuando el botón derecho del ratón fue el clic. Modifique su código para el formulario 1_MouseDown. Cámbialo a esto:

Dim xPos As Integer
Dim yPos como entero

Si e.Button = MouseButtons.Right Then

xPos = e.X
yPos = e.Y
MessageBox.Show("La posición X es " & xPos & " La Y La posición es " & yPos)

Finalizar si

Primero, estamos configurando dos variables enteras, xPos e yPos. Después de que tenemos la misma declaración de "Si" que antes:

Si e.Button = MouseButtons.Right Then

Finalizar si

Dentro de la declaración "Si", estamos usando las propiedades X e Y de la variable "e":

xPos = e.X
yPos = e.Y

La propiedad X devuelve cuánta distancia, de izquierda a derecha, tiene el ratón; la La propiedad Y devuelve cuán abajo, de arriba a abajo, está el ratón. Estos valores se asignan a nuestras dos variables. El resultado se muestra en un cuadro de mensaje.

Cuando hayas escrito el código, ejecuta tu programa y pruébalo. Haz clic con el botón derecho del ratón en cualquier parte del formulario. El nuevo cuadro de mensaje debería aparecer, diciendo ...donde estaba el ratón cuando el botón derecho estaba presionado.

Haga clic cerca de la parte superior del formulario y verá que el número de la posición de la Y baja. en valor; Haga clic cerca de la parte inferior del formulario y verá que sube de valor. La parte superior de la forma (o un control) tiene un valor Y de cero.

Haz clic de izquierda a derecha y verás que los números X suben de valor. El mismo El borde izquierdo de su forma tiene un valor X de cero.

En la siguiente parte, exploraremos el evento de KeyDown.

Aprende sobre el evento KeyDown en VB .NET --

Espero que te haya sido de ayuda!

Recomendado para ti

Bestseller No. 1
MUGFFINS Taza Informático (Mejor del Mundo) - Regalos Originales y Divertidos de Informática
  • TAZAS DE ALTA CALIDAD. Color blanco, 11 oz / 350 ml. Cada taza tiene una tinta increíble que las hace resistentes al lavavajillas y microondas. Después de regalarla, la taza perdurará como un recuerdo de tus compañeros de colegio, de trabajo, hijos, pareja, amigos… El mejor regalo para informáticos o estudiantes de informática.
  • LA TAZA, EL REGALO IDEAL MULTIUSOS. Una bonita, colorida y divertida taza, que también vale para muchas cosas. No es necesario comprar regalos caros para hacer sonreír a alguien. La taza pale para todo, aunque se llame “taza de café” o “taza desayuno”, pueden contener otros líquidos como té o incluso cerveza… Desayuna con tu informático y dile: Eres el mejor informático del mundo.
  • IDEA PERFECTA COMO REGALO GRACIOSO. ¿Buscando un regalo complejo? ¡No vale la pena! Aquí tienes un regalo simple, pero a la vez original, útil para aquella persona que también reirá a carcajadas con sus mensajes graciosos. Nuestras tazas son sinónimo de buen precio, mensajes alegres y calidad en el diseño. Ideal como regalo para cumpleaños o aniversarios: el regalo de informática perfecto para hombres.
  • PARA GENTE ESPECIAL de todo tipo, ya sea compañeros de trabajo (jefe, proveedores, clientes, empleado del mes…), familia (padres, madres, abuelos, tíos, hijos, primos, sobrinos…) para novios, pareja, marido / mujer, amigos etc. Esta taza de informático es perfecta para todo el mundo.
  • CAJA SUPER PROTEGIDA para que no re rompa, incluso si el mensajero juega a fútbol con ella. Con un diseño minimalista, hecha en cartón, es sencilla pero bonita para regalar. En pocas palabras, nuestras tazas para desayunar café o té son los mejores regalos divertidos en relación a la calidad, la originalidad y el precio. El mejor regalo que se le puede hacer a informáticos.
Bestseller No. 2
C50-E-11N3 CI3-7020U SYST
  • Muy conveniente
  • Peso del paquete: 2.64 kilograms
  • Producto de calidad
  • Fácil de usar