初学C# 判断当前鼠标指针了是否在窗体内部
我想要鼠标指针进入窗体内部时调用一个函数A()鼠标移出窗体时调用函数B()系统默认有个Mouse_EnterMove_leave问题是Move_leave()这个函数在鼠...
我想要鼠标指针进入窗体内部时调用一个函数A()
鼠标移出窗体时调用函数B()
系统默认有个Mouse_Enter Move_leave
问题是 Move_leave()这个函数在鼠标从窗体移动到窗体上的控件上时也会调用
而我的意图是只是鼠标移出窗体四周才调用B()
怎么实现? 展开
鼠标移出窗体时调用函数B()
系统默认有个Mouse_Enter Move_leave
问题是 Move_leave()这个函数在鼠标从窗体移动到窗体上的控件上时也会调用
而我的意图是只是鼠标移出窗体四周才调用B()
怎么实现? 展开
展开全部
private void Form1_MouseLevave(object sender, MouseEventArgs e)
{
Control c= this.GetChildAtPoint(new Point(e.X,e.Y));
if (c i== null)
{
B();
}
}
{
Control c= this.GetChildAtPoint(new Point(e.X,e.Y));
if (c i== null)
{
B();
}
}
更多追问追答
追问
可是这个Mouse_leave()参数是EventArgs不是MouseEventArgs 改了就编译错误 怎么搞?
追答
那你刚脆这么写
Point p= MousePosition;//当前鼠标位置
if(p 不在窗体内)//此处用p点与 this.Localtion和this.Width和this.Hight判断,自己想想怎么比较
{
b();
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询