我在第二台显示器上运行 Visual Studio 2019(Windows GUI 应用程序)。当我构建并启动该应用程序时,它始终出现在主显示器上。
我希望它出现在运行 Visual Studio 的同一台显示器上。我以为如果我将应用程序拖到该显示器并关闭它,那么它下次应该会在该显示器上启动,但不,它仍然在主显示器上启动。
我怎样才能让它出现在我想要的显示器上?
答案1
对于大多数应用程序来说,拖动到显示器然后关闭窗口都是可行的。如果不行,还有其他方法可以定位应用程序窗口。下面是其中的 2 种方法,
方法 1:以编程方式移动窗口
Screen.AllScreens
是一个指向所有活动监视器的数组。因此, Screen.AllScreens[0]
将是您的主监视器,Screen.AllScreens[1]
将是第二监视器。
现在使用以下脚本获取应用程序窗口的句柄,然后借助“SetWindowPos”方法对其进行定位
// Get handle to active window
IntPtr windowHandle = GetForegroundWindow();
// get position for second monitor
secondMonitor = Screen.AllScreens[1].WorkingArea;
// move application window to the second monitor
SetWindowPos(windowHandle, 0, secondMonitor.Left, secondMonitor.Top, secondMonitor.Width, secondMonitor.Height, 0);
方法2:通过快捷方式手动移动窗口
只需允许应用程序在主显示器上打开,然后使用快捷方式Windows
++在显示器之间移动应用程序Shift
。Left/Right Arrow
您可以探索涉及注册表和第三方应用程序的其他方式。