我现在想实现的功能:
在一个panel容器内有一个控件
我点击这个控件(A)时显示一个窗体(B)
这个窗体默认的显示位子是:this.Location = new Point(Control.MousePosition.X + 10, Control.MousePosition.Y + 10);但是当控件A距离显示器底部 或 显示器右边距 比较近的时候
窗体B的内容就看不到了哪位高手帮我解决下
最好附源码
谢谢了
在一个panel容器内有一个控件
我点击这个控件(A)时显示一个窗体(B)
这个窗体默认的显示位子是:this.Location = new Point(Control.MousePosition.X + 10, Control.MousePosition.Y + 10);但是当控件A距离显示器底部 或 显示器右边距 比较近的时候
窗体B的内容就看不到了哪位高手帮我解决下
最好附源码
谢谢了
_FormB.Location = new Point(Control.MousePosition.X + 10, Control.MousePosition.Y + 10);你能算出 X Y 那 X+_FormB.Width 和 Y+_FormB.Height 这两个数如果大于你控件的 Width 和Height就说明超过了.如果你控件有滚动条..那另外的减滚动条的.
或者把panel的size改大~
{
Rectangle r = Screen.PrimaryScreen.WorkingArea;
Rectangle cr = new Rectangle(new Point(Control.MousePosition.X + 10, Control.MousePosition.Y + 10), this.Size);
r.Intersect(cr);
this.Bounds = new Rectangle(new Point(r.Right - this.Size.Width, r.Bottom - this.Size.Height), this.Size);
}