I need a way to track the mouse coordinates more precisely than this code. If you run this code and move your mouse really fast or change directions fast, the coordinates might look this: 50 and then 40. It seems that when the mouse moves fast it doesn’t track all the points the pointer covers, like in this example there are 10 coordinates that it skips. If I move it slowly, there’s no problem. I need a way to track all the pointer coordinates with no skips. I’ve tried the sample on Code Project that uses global hooks, with the same result. How can I do this? Is there a registry change that can be made that forces windows to track all the coordinates. Is it possible? I would prefer to do it with C# but will consider other ways too. Thanks.
private void Form1_MouseMove(object sender, MouseEventArgs e)
{
if (num != 1)
{
listBox1.Items.Add(e.X.ToString());
}
}
The mouse pointer doesn’t move across every pixel, if you move the mouse fast, it will move a whole bunch of pixels between events. The hardware simply doesn’t send a signal for each pixel that the mouse moves, it reports the distance that the mouse has moved since the last report.
Instead of trying to track where the mouse is, use the
Cursor.Clipproperty to limit the movement of the mouse:Use an empty rectangle to release the mouse: