文档/ 原理说明/ 记住位置的工作原理
原理说明

记住位置的工作原理

MaxTo 记住一个位置时会存储什么、何时移动窗口,以及它的局限在哪里。

阅读时间 4 分钟前提 你已经记住过一个位置

记住的位置包含什么

当你记住一个位置时,MaxTo 会存储三样东西:

  • 应用程序——按其可执行文件识别,而不是按单个窗口识别。因此,在一个窗口上做一次操作,就能覆盖该应用程序今后打开的所有窗口。
  • (可选)窗口类型。“仅限与此类似的窗口”会把匹配范围缩小到同一类窗口——例如 Excel 的电子表格窗口,而不包括它的对话框。如果不勾选,该位置适用于这个应用程序的所有窗口。
  • 区域及其所在的显示器。区域以屏幕的比例存储,而不是以网格单元格存储——与预设使用的是同一个技巧。把网格从 4 × 7 改为 5 × 9 后,原本覆盖屏幕左侧三分之二的位置仍然覆盖左侧三分之二。

哪个位置优先

“应用程序”页面是一个列表,与新窗口匹配的第一个条目生效。更具体的条目(应用程序加上窗口类型)优先于针对整个应用程序的通用条目。在具体程度相同的条目之间,列表中靠上的条目优先。

MaxTo 何时移动窗口

每个窗口只会被移动一次,即在它首次出现时。切换虚拟桌面不算作出现,所以在桌面之间来回切换时,窗口不会被再次移动。

MaxTo 从不和你较劲:窗口只在打开时被移动一次——之后,它就归你了。

移回:按需使用同一个位置

移回使用的是同一个记住的位置,但只在你要求时才执行。移回窗口会把当前窗口移回原位;移回所有窗口会把每个有记住位置的窗口都移回原位。正因如此,即使某个应用程序的自动开关已关闭,移回仍然有效:这个开关只控制窗口打开时的移动。移回也不会改变已记住的内容——要更改位置,请记住一个新位置。

有两种情况刻意处理得比较温和。最小化的窗口不会因移回而被弹开:记住的位置会应用到窗口将要还原到的位置,窗口保持最小化,直到你还原它。位于已断开显示器上的窗口也不会被随意乱放——MaxTo 能可靠地重新识别显示器(拔出、接入扩展坞和更换端口都不影响识别);如果记住的那台显示器确实不在了,它会把窗口放到最有把握匹配的显示器上,而不是胡乱猜测。

为什么有些窗口无法移动

Windows 本身会阻止普通(未提升权限的)进程移动以提升权限运行(“以管理员身份”)的窗口。这不是 MaxTo 的规则,而是 Windows 的安全边界。当前窗口以提升的权限运行时,网格会明确告诉你,而不是悄无声息地什么都不做;记住的位置同样无法应用到这类窗口。

贴合网格是刻意设计成不同的

贴合网格看起来和移回是一类功能,但它既不存储任何内容,也不重放任何内容:它直接拿当前窗口的现状,将其贴靠到最近的网格单元格,判断依据是窗口的可见边缘,而不是现代窗口带有的不可见调整大小边框。无论窗口是否记住过位置,都可以用它一次性整理一下。