日期:2014-05-17  浏览次数:20996 次

winform,请问如何判断鼠标从窗体移出的方向?谢谢
winform,请问如何判断鼠标从窗体移出的方向?
我想判断鼠标从窗体的哪一边移出
如果由上往下,从下方移出,窗体高度增加25px,并在增加的区域添加几个button控件,鼠标在增加区域上面增加区域不消失
如果由下往上,从下方移入,窗体高度减少25px,增加区域消失
我用了一个透明的label

bool alreadyChanged = false;
        private void labelCheck_MouseEnter(object sender, EventArgs e)
        {
            if (alreadyChanged == false)
            {
                this.Size = new Size(this.Width, this.Height + 25);
                alreadyChanged = true;
            } 
        }

        private void labelCheck_MouseLeave(object sender, EventArgs e)
        {
            if (alreadyChanged == true)
            {
                this.Size = new Size(this.Width, this.Height - 25);
                alreadyChanged = false;
            }
        }

也不全满足
请问如何实现我描述的,如何在增加的区域上面添加button
谢谢各位
winform 鼠标

------解决方案--------------------
比如说你同事捕获mouse_move和mouse_leave事件,并且分别记录了最后一次捕获到的鼠标postion。那么跟据这两个值就能算出来了。比如说两个坐标其X值分别是503、506,那么你就能判断这个到底是向左还是想向右了。