首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在第二个监视器上运行VB.net应用程序

在第二个监视器上运行VB.net应用程序
EN

Stack Overflow用户
提问于 2016-03-29 14:34:09
回答 2查看 4.9K关注 0票数 3

我是一个编码新手,但我为我工作的计划做了简单的应用!

我最近遇到了一个“小”问题,我的一个应用程序!

我构建了一个具有多个窗体的Windows窗体应用程序,该应用程序运行在双屏幕数控系统上。数控程序必须以更高的分辨率在主屏幕上运行。我的应用程序运行在第二个屏幕上,触摸屏是1024;768。

问题本身是,如果我按照我想运行的所有调试数据运行代码,那么在第二个屏幕上打开应用程序,在这个屏幕上打开所有下一个表单。如果我将其与发布的数据一起安装,则所有表单都在主监视器上打开,即使我将它们拖到第二个屏幕上。在我关闭他们之后,他们又回到了初选。

是否有一种方法,我可以把一个代码行在每个表单的开头,使所有的表单打开在辅助屏幕上。

当安装程序正确工作时,我将锁定屏幕设置,以确保没有人会破坏设置。

请对我温柔一点,我没有任何关于如何编码的信息。我从网上读书学到东西!

谢谢大家!!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-29 15:42:22

像这样的东西应该将窗口定位在第一个非主屏幕上的偏移量100,100 .您可以根据需要调整位置和/或大小。

代码语言:javascript
复制
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    Dim secondaryMonitor = Screen.AllScreens.FirstOrDefault(Function(x) Not x.Primary)
    If secondaryMonitor IsNot Nothing Then
        Dim newLocation = secondaryMonitor.Bounds.Location
        newLocation.Offset(100, 100) ' adjust as needed
        Me.Location = newLocation
        ' Also see Me.Size and Me.Bounds
    End If
End Sub
票数 3
EN

Stack Overflow用户

发布于 2018-01-02 19:59:46

这对我起了作用:

代码语言:javascript
复制
Private Sub _MainForm_Move(sender As Object, e As EventArgs) Handles MyBase.Move
         ' preserve  me.Location.x  and  me.Location.y  here.
End Sub

Then, at program boot, restore:       me.Location.x  and  me.Location.y
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36287380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档