日期:2014-05-18  浏览次数:20807 次

【c#】还是关于鼠标隐形显形的问题,求大神
现在问题很简单,就是想在一个窗口中当鼠标的横坐标大于多少的时候刚好显形,其他时候隐形,不过我原来在mouseMove里面写过在e.X的数值判断下使用ShowCursor函数,不过效果很不好,觉得可能是因为mousemove捕捉的太快,而ShowCursor本身有延迟。不过这么理解对也好错也好现在只求一个解决方案,还请大神们帮一下。

------解决方案--------------------
兄弟,测试了,可以,给分吧,嘿嘿
 bool blLast = true;//true表示上一次移动的结果是大于100,false相反
bool blNow = true;//true表示现在的结果是大于100,false相反
private void Form1_MouseMove(object sender, MouseEventArgs e)
{

Pen pen = new Pen(Color.Red);
Graphics g = this.CreateGraphics();
g.DrawLine(pen, 100, 20, 100, 500);
if (e.X >= 100)
{
textBox1.Text = "x:" + e.X.ToString();
blNow = true;
if (blNow!=blLast)
{
ShowCursor(true);//0时隐藏鼠标,1时显示鼠标
blLast = blNow;
}

}
else
{
textBox1.Text = "x:" + e.X.ToString();
blNow = false;
if (blNow!=blLast)
{
ShowCursor(false);
blLast = blNow;
}
}
}