【发布时间】:2016-12-22 06:54:03
【问题描述】:
在 C# 中,我如何获取窗体中对象相对于主屏幕的位置?
我搜索了一下,但我真的很困惑。
我得到了表单位置和对象位置并求和但不正确:
X = this.Location.X + pictureBox1.Location.X;
Y = this.Location.Y + pictureBox1.Location.Y;
我也试过这个:
mypoint = pictureBox1.PointToScreen(Point.Empty);
还有这个:
mypoint =new Point(this.Location.X + pictureBox1.Location.X - Screen.PrimaryScreen.Bounds.Left,
this.Location.Y + pictureBox1.Location.Y - Screen.PrimaryScreen.Bounds.Top);
【问题讨论】:
-
pictureBox1.PointToScreen(Point.Empty);这应该是一个正确的解决方案。为什么你知道它返回错误的结果?
-
是的,你是对的,我的错!我不知道为什么,但我使用了表单位置更改事件处理程序,它在启动时给了我错误的位置,我使用了表单加载,它工作正常。谢谢!
标签: c#