2012-08-06 33 views
1

我有一个在我的主机上通过控制台成功运行的vb.net项目。我发布了它,将它安装在其他计算机上,并在这些机器上成功运行它。我已经安装了xampp,这是php在幕后运行所必需的,同样,一切都运行完美。已发布的项目不适用于所有计算机?

但是,今天早上,我去安装在另一台电脑上,发生了一些奇怪的事情。窗口上的其中一个标签叠加到文本字段中。这听起来有点无害,但结果是用户无法使用文本字段,所以应用程序将无法工作。

基本上我的问题是,是否有一些方法来限制格式,以便它可以在所有计算机上工作? (我觉得这很奇怪,因为有问题的电脑是一个Windows 64位操作系统,就像我已经安装的电脑和我目前使用的电脑一样)

+0

DPI设置很可能会不同... – Mr47 2012-08-06 15:01:12

+0

可以理解。我认为已发布的版本虽然能够适当调整大小,所以不会发生重叠。有没有办法手动做到这一点? – GK1667 2012-08-06 15:03:01

+0

这是WinForms,WPF还是ASP.NET?什么是VBA.NET(你的意思是VBA还是VB.NET)? – 2012-08-06 15:07:19

回答

0

听起来像DPI设置正在导致您的问题。您可以通过将DPI设置更改回100%来验证这一点,重新启动计算机并查看它是否有所不同。有关如何更改DPI设置,请参阅this Link

我不能直接回答您如何解决您遇到的问题。但是我会带领你去解决它。

请参阅下面的链接,在这个问题上其他两个线程:

关于此事的一些详细信息:

  1. 创建应用程序这将在其他电脑上正确缩放取决于你是否自己编写了100%DPI的应用程序。如果您还没有,则可能会遇到问题缩小或升级应用程序大小以适应其他DPI设置的问题。

  2. 您希望应用根据用户设置进行缩放。您可以使用下面的代码可以这样做:

    Public Sub New() 
        InitializeComponent() 
    
        Me.AutoScaleMode = AutoScaleMode.Dpi 
        Me.AutoSize = True 
    End Sub 
    

    请记住,这将扩大目前的形式,你将不得不做,你在你的应用程序中有其他形式相同。有关详细信息,请参阅第2点链接。

  3. 如果您在创建表单时使用了Panel,TableLayoutPanel等容器,那么您将有更好的时间使表单适合其他DPI设置。 (我通过应用程序缩放的个人经验知道这一点。)

相关问题