You are on page 1of 5

Clase para el Funcionamiento Del Mouse

Eventos del mouse (ratn) en formularios Windows Forms


.NET Framework 4.5
Otras versiones
Cuando se controla la entrada del mouse, normalmente se desea
conocer la ubicacin del puntero del mouse y el estado de los
botones del mismo. Este tema proporciona informacin acerca
de cmo obtener informacin de los eventos del mouse y explica
el orden en que se producen los eventos clic del mouse en los
controles de formularios Windows Forms. Para obtener una lista
y la descripcin de todos los eventos del mouse, vea
Funcionamiento de la entrada del mouse (ratn) en los
formularios Windows Forms.
Informacin del mouse

Se enva un MouseEventArgs a los controladores de eventos del


mouse relacionados con el clic y el seguimiento de los
movimientos
del
mouse.
MouseEventArgs
proporciona
informacin acerca del estado actual del mouse incluyendo la
ubicacin del puntero en coordenadas del cliente, qu botn del
mouse se ha presionado y si se ha movido la rueda. Algunos
eventos del mouse, como aquellos que simplemente notifican el
hecho de que el puntero entre en lo lmites de un control envan
un EventArgs al controlador de eventos sin ms informacin.
Si desea saber el estado actual de los botones del mouse o la
ubicacin del puntero pero no desea controlar un evento del
mouse, puede utilizar las propiedades MouseButtons y
MousePosition de la clase Control. MouseButtons devuelve
informacin acerca de los botones del mouse que estn
presionados. MousePosition devuelve las coordenadas de la
pantalla del puntero del mouse y es equivalente al valor
devuelto por Position.
Conversin entre coordenadas del cliente y de pantalla

Puesto que parte de la informacin de la ubicacin del mouse se


proporciona en coordinadas del cliente y otra parte en
coordenadas de la pantalla, puede que sea necesario convertir

un punto de un sistema de coordenadas a otro. Puede hacer


esto fcilmente utilizando los mtodos PointToClient y
PointToScreen disponibles en la clase Control.
Comportamiento estndar del evento clic

Si desea controlar los eventos clic del mouse en el orden


adecuado, es necesario que sepa el orden en que se producen
los eventos en los controles de formularios Windows Forms.
Todos los controles de los formularios Windows Forms
desencadenan los eventos en el mismo orden cuando se
presiona y se suelta un botn del mouse (independientemente
del botn que sea), salvo cuando se anotan para controles
individuales. A continuacin se muestra el orden de eventos
provocado para un solo clic con el botn del mouse:
1. Evento MouseDown.
2. Evento Click.
3. Evento MouseClick.
4. Evento MouseUp.
A continuacin se muestra el orden de eventos provocado para
un doble clic con el botn del mouse:
1. Evento MouseDown.
2. Evento Click.
3. Evento MouseClick.
4. Evento MouseUp.
5. Evento MouseDown.
6. Evento DoubleClick. (Esto puede variar, dependiendo de si
el
control
en
cuestin
tiene
el
bit
de
estilo
StandardDoubleClick establecido en true. Para obtener
ms
informacin
sobre
cmo
establecer
un
bit
ControlStyles, vea el mtodo SetStyle.)
7. Evento MouseDoubleClick.
8. Evento MouseUp.

Para obtener un ejemplo de cdigo que muestra el orden de los


eventos clic del mouse, vea Cmo: Controlar eventos del usuario
en controles de formularios Windows Forms.
Controles individuales
Los controles siguientes no se ajustan al comportamiento
estndar de los eventos clic:

Button , CheckBox, ComboBox y RadioButton.


Nota
Para el control ComboBox, el comportamiento de eventos
descrito a continuacin se produce si el usuario hace clic en el
campo de edicin, en el botn o en un elemento de la lista.
o Clic con el botn primario: Click, MouseClick
o Clic con el botn secundario: no se producen eventos
de clic
o Clic con el botn primario: Click, MouseClick; Click,
MouseClick
o Doble clic con el botn secundario: no se producen
eventos clic

TextBox
,
RichTextBox,
CheckedListBox

ListBox,

MaskedTextBox

Nota
El comportamiento de eventos descrito a continuacin se
produce cuando el usuario hace clic en cualquier parte dentro
de estos controles.
o Clic con el botn primario: Click, MouseClick
o Clic con el botn secundario: no se producen eventos
de clic
o Clic con el botn primario:
DoubleClick, MouseDoubleClick

Click,

MouseClick;

o Doble clic con el botn secundario: no se producen


eventos clic

control ListView

Nota
El comportamiento de eventos descrito a continuacin slo
aparece cuando el usuario hace clic en los elementos del control
ListView. No se produce ningn evento cuando se hace clic en
otro lugar del control. Adems de los eventos descritos a
continuacin,
estn
los
eventos
BeforeLabelEdit
y
AfterLabelEdit,
que
podran
tener
inters
para
los
programadores que deseen utilizar la validacin con el control
ListView.
o Clic con el botn primario: Click, MouseClick
o Clic con el botn secundario: Click, MouseClick

o Clic con el botn primario:


DoubleClick, MouseDoubleClick

Click,

MouseClick;

o Clic con el botn secundario:


DoubleClick, MouseDoubleClick

Click,

MouseClick;

control TreeView
Nota
El comportamiento de eventos descrito a continuacin slo se
produce cuando el usuario hace clic en los propios elementos o
a la derecha de stos en el control TreeView. No se produce
ningn evento cuando se hace clic en otro lugar del control.
Adems de los eventos descritos a continuacin, estn los
eventos
BeforeCheck,
BeforeSelect,
BeforeLabelEdit,
AfterSelect, AfterCheck y AfterLabelEdit, que podra interesarle
si desea utilizar la validacin con el control TreeView.
o Clic con el botn primario: Click, MouseClick
o Clic con el botn secundario: Click, MouseClick
o Clic con el botn primario:
DoubleClick, MouseDoubleClick

Click,

MouseClick;

o Clic con el botn secundario:


DoubleClick, MouseDoubleClick

Click,

MouseClick;

Comportamiento de dibujo de controles de alternancia


Los controles de comando de alternancia, como los controles
que derivan de la clase ButtonBase, tienen el siguiente

comportamiento de dibujo
eventos clic del mouse:

distintivo

en

combinacin

con

1. El usuario presiona el botn del mouse.


2. El control se dibuja en el estado presionado.
3. Se provoca el evento MouseDown.
4. El usuario suelta el botn del mouse.
5. El control se dibuja con relieve.
6. Se provoca el evento Click.
7. Se provoca el evento MouseClick.
8. Se provoca el evento MouseUp.
Nota
Si el usuario mueve el puntero fuera del control de alternancia
mientras el botn del mouse est presionado (como al retirar el
mouse del control Button mientras est presionado), el control
de alternancia se dibujar con relieve y slo se produce el
evento MouseUp. Los eventos Click o MouseClick no se
producirn en esta situacin.

You might also like