垂直对齐窗口可使其在两个显示器上展开

垂直对齐窗口可使其在两个显示器上展开

我有两台 1920x1080 的显示器,它们并排排列。

在此处输入图片描述

当我将底部显示器中的窗口贴到该显示器的底部边缘时,它会扩展,因此窗口会从底部显示器的底部边缘一直延伸到顶部显示器的顶部边缘(以红色显示)。我期望窗口只在底部显示器的顶部和底部边缘之间扩展(以绿色显示)。

在此处输入图片描述

有没有办法“修复”这种行为?

这就是我所说的将窗口贴靠到底部的意思(屏幕截图是在只有一个显示器的 Win7 中,但我问的是 Win8.1): http://i.imgur.com/cpMUGz3.png

另外,Win-Shift-Up完成与捕捉相同的事情。

答案1

不确定是否可以在系统级别完成此操作,但下面是使用 AutoHotKey 实现此操作的工作脚本。按 Shift+Win+Up 激活。当然,您可以分配给其他热键。

该代码根据 Jeff Axelrod 的回答进行了大量修改如何才能在多个显示器上最大化一个窗口?

+#Up::
  WinGetActiveTitle, Title
  WinRestore, %Title%
  ActiveMonitor := GetCurrentMonitor()
  SysGet, MaxArea, MonitorWorkArea, %ActiveMonitor%
  WinMove, %Title%, , , MaxAreaTop, , MaxAreaBottom - MaxAreaTop
return

GetCurrentMonitor()
{
  SysGet, numberOfMonitors, MonitorCount
  WinGetPos, winX, winY, winWidth, winHeight, A
  winMidX := winX + winWidth / 2
  winMidY := winY + winHeight / 2
  Loop %numberOfMonitors%
  {
    SysGet, monArea, Monitor, %A_Index%
    if (winMidX > monAreaLeft && winMidX < monAreaRight && winMidY < monAreaBottom && winMidY > monAreaTop) {
      return A_Index
    }
  }
  SysGet, primaryMonitor, MonitorPrimary
  return "No Monitor Found"
}

答案2

假设是桌面,而不是现代 UI(metro)模式。您想关闭 Snap 还是让 snap 只填充一个屏幕。尝试将其拖到底部屏幕的顶部而不是底部/底部,这样它就会向下移动。

相关内容