PictureBoxes 在表单设计中的位置 window 与其在运行时的位置不对应

Position of PictureBoxes in form design window do not correspond to their position during runtime

编辑:我意识到我没有正确标记它——我应该包含 vb.net 作为标记,因为可能有基于代码的解决方案。请注意,我的源代码中没有对分辨率进行任何更改。

更新: 当程序开始执行时,每个 PictureBox 的左侧坐标乘以~0.376,而每个 PictureBox.Top 的顶部坐标乘以~ 0.418。这个"down-scaling"适用于所有图片框。我拥有的源代码非常简陋,无法对此负责。我也看了另一个项目,我仍然面临同样的错误。一个简单但不好的解决方法是将每个坐标除以上面提到的相应值。


为了向您展示我面临的问题,请查看下面的图片。比较此图像,其中每个 PictureBox(即一条蛇、一组箭头等)已放置,以便它们与背景图像的特征对齐:

对于这张图片,PictureBox 元素聚集在一起。它们的位置已经 "down-scaled" 更接近表单的原点(请注意,所有元素在运行时都在水平变换,这就是元素位于右上角的原因) :

在给我的解决方案中(我相信是在 VS 2010 中开发的),每个 PictureBox 的位置超出了背景图像,如图所示:

很明显,每个图片框都井井有条。在执行期间,每个 PictureBox 都会到达其预期位置(即与背景图像适当对齐)。

显然,给我的解决方案的原始开发人员不会遇到我遇到的问题。该解决方案在运行时正常运行这一事实表明我的 VB 实例存在某种错误。有谁知道任何解决方案吗?

我遇到过这个问题which asks how to change the default resolution for a Windows 8 App and this question ,但他们没有提出明确的解决方案。我将不胜感激任何帮助,因为它使我无法完成我必须做的重要工作。提前致谢!

我现在觉得有点傻 - 我开始对 VB 表格进行更多研究,发现我的表格 Microsoft documentation on form scaling. Realizing that my issue may have been caused by having this scaling automatically carried out, I then found the AutoScaleMode 属性 并将其从 字体None,解决了我的问题。