如果我把窗体拖拽,有一半窗体被拽显示器的外部,我想让它自己返回到原始位置,请问一下又该如何?
追答把上面的代码定义成一个方法
你想触发的时候调用一下就可以了
嗯,那当我的窗体出了边界后,我的判断是不是就可以这样写了:
if(myform.Width > System.Windows.Forms.Screen.PrimaryScreen.Bounds.Width)
{
// 调用此方法
}
if(myform.Height> System.Windows.Forms.Screen.PrimaryScreen.Bounds.Height)
{
// 调用此方法
}
你是不是希望form固定在那个位置?
放到form的move事件里 ,只要窗口移动了,就触发
你是不是希望form固定在那个位置?
放到form的move事件里 ,只要窗口移动了,就触发
您那样做算是固定了吧?可以达到效果。
但是移动不开,我想稍微移动一点,但是只要不出屏幕的边缘,窗体就在那不动,一旦出了屏幕边缘我才让它返回到原来的位置,是这样的。
所以,我想问出屏幕边缘的那一刻,改如何判断,就是当Left + myfrom.Width > Screen.PrimaryScreen.Bounds.Width? 是这样的想法嘛?
判断 top 和left
如果top > 100 说明 出了屏幕下方
left > 100 说明移出了右方
< 0 移出左方
一共就那么几种情况