2009-12-26 18 views

Respuesta

10

MouseEventArgs.Position es la posición del cursor del ratón relación con el control durante el evento, en el momento del evento.

Cursor.Position es la actual posición del cursor del ratón en relación con el escritorio.

+0

Esta es * la * respuesta que estoy buscando; si está ejecutando un depurador y configura el tamaño de control para que sea el tamaño de la pantalla, los dos pueden diferir, y esto fue lo que me confundió. – Graviton

+0

incluso el tamaño de control es el tamaño de la pantalla, pero el tamaño del cliente no es el tamaño de la pantalla. – Benny

+0

O no entiendo la respuesta, o es incorrecta. Hizo una forma simple con un botón y etiquetas con información sobre los valores discutidos. Presionó un botón y luego no movió el mouse. Obtuve las etiquetas de tace en el formulario: Cursor.Position = {X = 159, Y = 246}, e.Location = {X = 11, Y = 6}, PointToScreen (e.Location) = {X = 69, Y = 86}. –

0

creo Cursor.Position es relativo al escritorio, mientras que MouseEventArgs.Location es relativo al control que generó el evento

+0

Mi prueba indica que 'PointToScreen (MouseEventArgs.Position)' no se iguala a 'Cursor.Position'. – Graviton

0

MouseEventArgs.Position es relativa al rectángulo cliente del control, Cursor. La posición está en la coordenada de pantalla.

+0

Mi prueba indica que 'PointToScreen (MouseEventArgs.Position)' no se iguala a 'Cursor.Position'. – Graviton

+0

Probé, son lo mismo. – Benny

1

MouseEventArgs.location le da la posición del cursor relativa al control durante el evento.

Windows.Forms.Cursor.Position le da la posición del cursor en relación con el escritorio.

Obviamente, estos dos no tienen que ser y no son los mismos. El último puede ser utilizado sin un evento como tal también a diferencia de MouseEventArgs.Location

+0

Mi prueba indica que 'PointToScreen (MouseEventArgs.Position)' no se iguala a 'Cursor.Position'. – Graviton

+0

Eso es porque MouseEventArgs.Position es la posición del mouse en el momento del evento y Cursor.Position es la posición actual. –