VB.NET Windows APP表格改变外观(不需要)

时间:2016-07-26 16:46:09

标签: vb.net winforms

我有一个桌面应用程序,我发送给客户。对于所有机器上的一个客户端,它的分辨率一直都是错误的。我已经创建了一个虚拟机并将其设置为分辨率,当然,一切看起来都很好。他们在1280x1024。该应用程序在其他客户的大约三十台其他机器上运行就好了。我让他们抓一个屏幕打印,这里是: customer screen shot that is malformed from their computer screen how it looks on dev, test, and other customers computers

需要帮助!我不知道为什么/这里需要什么。

3 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

  

Autoscalemode设置为FONT。我应该把它设置为NONE吗?不确定那个设置是什么...我在VS 2015. - 计算Smomputation

作为第一步,我建议您声明您的应用程序能够识别DPI。这是通过 app.manifest 文件完成的。

您可以通过以下方式在VS中访问此文件:

项目菜单 - > ProjName属性 - >应用程序选项卡 - >查看Windows设置按钮

在文件中查找以下代码块:

  <!--
  <application xmlns="urn:schemas-microsoft-com:asm.v3">
    <windowsSettings>
      <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
    </windowsSettings>
  </application>
  -->

默认情况下,此部分已注释掉。要启用它,请删除第一行(<!--)和最后一行(-->)。

执行此操作将阻止操作系统进行DPI虚拟化,可以将其视为显示的表单及其组件的表单位图缩放。

如果结果显示仍然混乱,请尝试将Form.AutoScaleMode设置为DpiNone

答案 2 :(得分:-1)

您的错误很常见。 您只需要更改对齐属性并禁用顶部属性。