本人是通过timer控件 记录鼠标位置,当鼠标停留时比较前后两次鼠标的位置,如果在同一位置停留2秒就隐藏,当鼠标移动后位置变换,指针就会在显示。具体代码如下:
private int index = 0;
private int x=0;
private int y=0;
private void timer1_Tick(object sender, EventArgs e)
{
Point p = Cursor.Position;
if (p.X == x && p.Y == y)
{
index++;
if (index >= 200)
Cursor.Hide();
}
else
{
Cursor.Show();
index = 0;
}
x = Cursor.Position.X;
y = Cursor.Position.Y;
}
private void Form1_MouseHover(object sender, EventArgs e)
{
timer1.Enabled = true;
timer1.Interval = 10;
}