Windows系统的窗口管理器横评:任务栏增强+软件分屏+窗口进程保存……

30+款窗口管理器横评:Window Manager for Windows

本文使用思源笔记编写

小软件开发不易,支持正版,且用且珍惜

image-20231217145344-0rm83lq

单款软件是搞不定窗口管理以及日常操作的,建议是多款软件相互搭配使用。
甚至,个别软件的使用多少还是需要编程基础,不要觉得有现成的软件,就可以随便搞了,没那么简单的。

我的个人窗口管理软件搭配

使用场景: 我的电脑基本上不关机,平时都是用的休眠,包括拔下硬盘、显卡都是用的休眠,除非硬盘掉盘了或者装了新软件才需要重启。

  1. 由于我长时间不关机,如果开了几十个软件,重启后我也不知道哪个窗口从哪个位置打开;
  2. 以鼠标开发为例,设计电路时需要打开Altium+OrCAD+Chrome+Acrobat,编辑代码时需要打开礦ision+MounRiver+SublimeText,调试鼠标时需要打开Visual Studio+礦ision+MounRiver+Bushound Bus+Jcom,如果是以虚拟桌面进行管理,我需要把窗口在N个虚拟桌面直接来回拖动,但是Windows的那个垃圾虚拟桌面会让我感到精神分裂。
  3. 嵌入式开发,再编写上位机软件或者调试下位机设备的时候,会碰到一个问题,反复关闭打开软件的软件默认是固定在中间打开,但是这个位置挡住了当前编辑窗口,我需要对反复进行调试的窗口进行移动后才能进行调试。
  4. 多个屏幕,分辨率不同,必须要移动一个直角之后,才能到达另一个屏幕,如果不用软件辅助,鼠标移动的时候卡在死角。
  5. 软件窗口太多的时候,有些程序超出了屏幕空间,鼠标还点不到标题栏,只能把软件进程杀掉,但是,里面运行的内容就没了。
  1. Vivaldi:加强版的Chrome浏览器,内建工作区、分组、分栏,这是主力软件
    2. Dexpot:虚拟桌面软件,面板多、选项多、UI交互友好,这是主力软件
  2. True Launch Bar:加强Windows系统的软件管理,这是主力软件
  3. AquaSanp:加强Win10系统的窗口贴边与拉伸效果,这是主力软件
  4. LittleBigMouse:不同分辨率的显示器的鼠标死区穿透, 这是主力软件
  5. 7+ Taskbar Tweaker:合并所有标签页且高效的进行管理,这是主力软件
    7. Groupy:添加标题,收拢窗口,避免窗口太多造成管理混乱,这是主力软件
  6. SanpIt:窗口布局,软件窗口放入指定区域,有效利用屏幕空间,这是主力软件
  7. AltDrag(AltSnap):窗口辅助管理,可以拖拽一些标题栏超出屏幕空间的软件,这是主力软件
  8. WindowTop:窗口锚功能,在某些情况下可以很好的期待Alt+Tab或者是点击任务栏,这是主力软件
    11. Actual Tools - Actual Virtual Desktops:虚拟桌面,每个显示器可独立创建虚拟桌面,这是主力软件
    12. Actual Tools - Actual Title Buttons:虚拟桌面的辅助管理工具,可以在标题栏添加控件,这是主力软件
  9. Actual Tools - Actual Window Guard:窗口启动行为,可以控制窗口启动位置与CPU分配,这是主力软件
  10. WindowGrid:截图窗口设定大小,这是辅助软件
    15. WindowManager:在调试单片机的时候,需要一边观察输出,一边些写代码,需要四五个软件来切换,而这个软件直接保存布局,快速切换,这是辅助软件
  11. GoScreen:虚拟桌面,每个显示器可独立创建虚拟桌面,屏幕控件都是独立的,这是主力软件

注意

又卡又慢倒是无所谓,但是容易崩溃、容易失效的软件就不要用了,徒增管理成本、浪费时间。

个人遇到的问题

窗口管理逻辑

目前的应用窗口管理都是通过对虚拟显示器、虚拟桌面、任务栏、标题栏、窗口进行管理的,一个应用程序,可以有多个窗口,但是,有窗口不一定有标题栏,标题栏只是窗口内的一个成员或者是元素,而窗口是应用窗口管理的最小单位。

但是一般拖动窗口,都是对标题栏进行拖动,而没有标题栏的窗口,就只能通过AltSnap这种软件进行拖拽。在使用虚拟桌面的时候,很多人应该发现,在Win+Tab视图中,是不能将一个桌面的窗口拖放到另一个桌面中的。在《Windows 10/11 虚拟桌面管理增强》这篇文章中,就写了这么一段话: “按 Win+Tab 使用 Windows 自带的 TaskView 操作缩略图窗口,无法将某一台物理显示器中的窗口,拖放到另一台物理显示器中,而是只能将该窗口,在同属一台物理显示器的不同虚拟桌面间拖放。”

如此看来,对于系统来说,多个显示器映射为一个统一的虚拟显示器,但是,虚拟桌面和虚拟显示器并不一一对应,虚拟桌面是独立的!但是,切换虚拟桌面的时候,显示器1和显示器2的虚拟桌面却要同步切换,这就很不对劲。

就我目前的测试来看,支持单台显示器独立切换虚拟桌面而不干扰其他显示器的软件就只有Acutal Window Manager与Actual Virtual Desktop,这个软件也支持类似Win+Tab的视图中,向其他虚拟桌面拖拽窗口。

桌面管理效果

可能对于一些人来说,这些概念多少有点抽象,我就再简单描述一下。

单台显示器,有且只有一个桌面,然后不创建虚拟桌面的情况下,也就是只有一个虚拟桌面,虚拟桌面的编号是1-1​​,如图 (a) 。如果创建了虚拟桌面,那么每个虚拟桌面的编号就是1-n​​,如果是第二个显示器的第二个虚拟桌面自然就是2-2​​了,如图 (b)

日常使用虚拟桌面的时候,系统自带的虚拟桌面与Dexpot、VirtuaWin、GoScreen这些软件中,如果创建了新的虚拟桌面,那么是对虚拟显示器创建了虚拟桌面,如图 (c)

由于在虚拟桌面之间移动的最小的管理单位是窗口,那么,Groupy的将窗口合并到一个标题栏,系统是识别不到它这合并的起来的窗口的。因此,在系统原生虚拟桌面拖拽Goupy合并窗口的时候,并没有解散Groupy的合并标题页。但是,如果其中的一个窗口已经移动到了另一个虚拟桌面,那另一个虚拟桌面上是窗口是不带有Groupy的标题栏的。

Windows系统原生虚拟桌面虽然还保留着标签页关联,但是使用第三方虚拟桌面拖拽Groupy标签组里的标签的时候,标签组直接被拆分了,所以我直接放弃了这个软件。

基于个人的使用经验,虚拟桌面也好,还是什么也好,窗口的管理层级不要超过3层,过多的管理层级会降低管理的灵活性,管理软件本身缺陷会被放大,造成管理混乱。

目前的话我是使用这样进行软件搭配的:

  • Actual Virtual Desktop 进行虚拟桌面创建,如果是不同的任务类型或者是任务的不同阶段,我会把这些软件放入不同的虚拟桌面。

  • SnapIt 则对虚拟桌面内的窗口进行布局。

  • WintdowTop 同一个桌面内,如果前后台多,窗口相互覆盖的情况下,使用WindowTop的锚功能,倒是可以不用按Win+Tab,而是直接用鼠标点击去图标切换窗口。

  • 7+ Taskbar Tweaker 则是对任务栏的图标与预览进行管理,当然的,还需要响应的在系统设置里面调整设置。

按照层级划分则是:

Actual Virtual Desktop(桌面) - 7+ Taskbar Tweaker(任务栏) - SnapIt/WintdowTop(窗口)

原先的管理层级是:

Actual Virtual Desktop(桌面) - 7+ Taskbar Tweaker(任务栏) - Groupy -SnapIt/WintdowTop(窗口)

砍掉Groupy之后,倒是不用在意Groupy这个软件的崩溃之类的软件缺陷了。

快捷键管理

软件与工具增加之后,快捷键也会随之增加,快捷键的管理并不只是设置一下快捷键映射的问题。
软件的理解、快捷键设置、快捷键使用、快捷键冲突屏蔽与映射……这些都是快捷键管理的流程,是需要花时间、花精力去处理的。

在设定快捷键之前,我们首先要了解,当前系统都有哪些快捷键已经注册,但是Windows这个垃圾系统本身就是没有提供这种功能或者是API,目前用来观察快捷键冲突都是用的Spy++或是open ARK之类测试工具。
所以,Windows用户就只能手动去设置快捷键,用脑子去记忆快捷键。当然,为了相对统一的管理快捷键,小众软件论坛也有不少人在做键谱,也就是快捷键映射软件,软件下如图。

快捷键占用情况

我目前是AquaSnap用来调整窗口位置的,它默认是占用的Win+Up/Down/Left/Right这个快捷键,但是系统也是占用的Win+Up/Down/Left/Right。但是,AquaSnap并不使用键盘Hook之类的去拦截快捷键,那么使用AquaSnap的时候,系统的快捷键也会生效。

由于我是84/87键盘,因此右手只要移动15cm左右的距离,摸到左下角,就可以轻松调整窗口位置,但是这个最佳位置的按键却被系统给占用了多少也会非常的尴尬。而,除了这个位置之外,也就J这个按键有辨识度了,快捷键基本上是全局快捷键,不使用Hook去检测,是不知道这是哪里来的快捷键。因此,一些修改键位或者是一些软件是使用Hook去检测系统的Window Message(窗口消息) ,比如AutoHotkey、Quicker这些软件所使用的快捷键拦截方式。

image
Quicker

Powertoys KeyboardManager之类的微软官方工具,能重映射某些单键与组合键,但是有些组合键是不能重映射的。本身他们就是用的Hook去拦截,因此也有可能被干扰而导致拦截失败,用Hook进行拦截容易被游戏的反作弊ban掉。

~"Keyboard Manager 会截获键盘挂钩以重映射键。 某些也执行此操作的应用可能会干扰 Keyboard Manager。"~

通过上面的两张图应该明白,键盘中四个修饰键中断常用的修饰键组合键中,当然上图的快捷键只是某个版本的系统默认快捷键,如果想对对自己的使用环境查看键盘占用的话,可以试试OpneARK这个工具进行查看。![image]

软件里面删除热键,重启后就会失效,只能通过Hook去拦截热键

方法一:解除系统快捷键占用

设置面板

Win10 UI的组件只能在设置里面找到。

注册表

Win​​ + ​​与Ctrl​​ + ​​基本上都绑定了很多操作,快捷键是Win​​ + *​​之类的,有一定的概率是可以通过在注册表路径里面添加一个字符串值去取消的,将字符串值并命名为DisabledHotkeys,路径如下:
计算机\HKEY_CURRENT_USER\SOFTWARE\Microsoft\CurrentVersion\Explorer\Advanced​​

但是,不是所有按键都一定生效,就比如,我目前已经禁用了Win+S、Win+Q,但是就是禁用不了Win+W,非常的尴尬。

添加完DisabledHotkeys值之后,想要生效,必须在任务管理器里面重启系统的Windows资源管理器,注意是重启,点到了结束任务,自己选择注销系统恢复吧!

image

操作完成之后,就可以正常对软件进行赋予快捷键了。

image

Powershell/CMD

注意

  1. 此项操作是对快捷键所对应的WM消息进行过滤,是在系统层面上对特定快捷键的启用开关,如果启用了筛选,所有软件和硬件发出的特定快捷键都不能生效,没有特殊情况,不建议操作。
  2. 进行此项操作需要打开键盘筛选器,但这个东西有个Bug,连续按五次Win键会黑屏,然后锁屏幕。

提醒

Powershell权限的权限低,运行脚本会报错,提示权限不够,如果是要执行,使用管理员权限打开cmd并不存在此类问题。

Enable = 操作生效 = 拦截快捷键WM消息

<#
.Synopsis
    This script shows how to use the built in WMI providers to enable and add 
    Keyboard Filter rules through Windows PowerShell on the local computer.
.Parameter ComputerName
    Optional parameter to specify a remote machine that this script should
    manage.  If not specified, the script will execute all WMI operations
    locally.
#>
param (
    [String] $ComputerName
)

$CommonParams = @{"namespace"="root\standardcimv2\embedded"}
$CommonParams += $PSBoundParameters

function Enable-Predefined-Key($Id) {
    <#
    .Synposis
        Toggle on a Predefined Key Keyboard Filter Rule
    .Description
        Use Get-WMIObject to enumerate all WEKF_PredefinedKey instances,
        filter against key value "Id", and set that instance's "Enabled"
        property to 1/true.
    .Example
        Enable-Predefined-Key "Ctrl+Alt+Delete"

        Enable CAD filtering
#>

    $predefined = Get-WMIObject -class WEKF_PredefinedKey @CommonParams |
        where {
            $_.Id -eq "$Id"
        };

    if ($predefined) {
        $predefined.Enabled = 1;
        $predefined.Put() | Out-Null;
        Write-Host Enabled $Id
    } else {
        Write-Error $Id is not a valid predefined key
    }
}

# Some example uses of the function defined above.

Enable-Predefined-Key "Win+Down"
Enable-Predefined-Key "Win+Up"

Disable = 操作失效 = 允许快捷键WM消息

<#
.Synopsis
    This script shows how to use the built-in WMI providers to disable the Win+Up and Win+Down keyboard shortcuts through Windows PowerShell on the local computer.
.Parameter ComputerName
    Optional parameter to specify a remote machine that this script should manage. If not specified, the script will execute all WMI operations locally.
#>
param (
    [String] $ComputerName
)

$CommonParams = @{"namespace"="root\standardcimv2\embedded"}
$CommonParams += $PSBoundParameters

function Disable-Predefined-Key($Id) {
    <#
    .Synposis
        Toggle off a Predefined Key Keyboard Filter Rule
    .Description
        Use Get-WMIObject to enumerate all WEKF_PredefinedKey instances,
        filter against key value "Id", and set that instance's "Enabled"
        property to 0/false.
    .Example
        Disable-Predefined-Key "Win+Up"

        Disable the Win+Up keyboard shortcut
    #>

    $predefined = Get-WMIObject -class WEKF_PredefinedKey @CommonParams |
        where {
            $_.Id -eq "$Id"
        };

    if ($predefined) {
        $predefined.Enabled = 0;
        $predefined.Put() | Out-Null;
        Write-Host Disabled $Id
    } else {
        Write-Error $Id is not a valid predefined key
    }
}

# Disable the Win+Up and Win+Down keyboard shortcuts
Disable-Predefined-Key "Win+Up"
Disable-Predefined-Key "Win+Down"
Disable-Predefined-Key "Win+Tab"

方法二:Hook快捷键拦截

市面上常用的软件的都是最高的都是用的键盘Hook去拦截键盘快捷键,包括AutoHotkey、Quicke之类软件。

Quicker里面只有拓展热键能进行Win、Alt、Shift、Ctrl四个修饰键的拦截,拦截时和AutoHotkey一样,都是靠Hook拦截去拦截WM消息实现的。
假设按下的是Win+Tab,然后拦截映射到Ctrl+Shift+F12,在按键检测软件里面,实际触发的是Alt+Tab与Ctrl+Shift+F12,而给到软软件的只有Ctrl+Shift+F12.

方法三:物理重映射

物理重映射是有条件的,前缀键必须是没有触发功能或者是抬起触发。抬起触发,按下之后不抬起,它就不会触发原有的功能,那么就可以当作前缀键与其他按键进行搭配。

假设要Fn+A触发B:

  1. 检测到Fn按下;
  2. 检测到Fn按下的同时,A也按下;
  3. 检测到Fn与A同时按下;
  4. 达成触发条件;
  5. 屏蔽掉A,触发B;
  6. A抬起,则停止触发B;

注意,这里的Fn是键盘内的前缀键,它本身不会向电脑发送触发任何键值。如果Fn这个键它本身就有自己的功能,如果是按下触发功能,那么必然会导致按下Fn的时候,就向电脑发码了。Win、Alt、Shift、Ctrl虽然是前缀键,他们单独按下和抬起的时候并不会触发任何功能,因此不管是电脑还是键盘内部都可以进行映射。

键盘和鼠标按键都是状态翻转发码,按下发送一次数据,抬起发送一次数据,保持按下是不会发送任何数据的。

方法四:过滤驱动拦截

驱动拦截,也就是.sys​级的驱动层拦截,拦截成功率远超Hook拦截。

目前基于interception这个过滤驱动的软件有很多,比如Kanata、Kmonad之类的,但是这些软件有个问题,当插入的USB数量超过一定数量后,后面插入的USB会没法加载,必须要重启才能加载。
驱动签名用于生产环境,是要好几千/年,而interception的价格是$2200/年,这足以把人劝退。

还弄不清楚驱动开发,因此暂时先写个大概,后面看看能不能自签名搞定。

方法五:买一把新键盘

很多人都买的非100%键盘,必然会碰到按键不够的情况,因此,买一把新键盘,带全键映射的那种就行了。
如果市面上没有合适的键盘,不妨学我自己搓键盘了。

辅助小工具

True Launch Bar (免费)(中文)

使用场景: 如果你有很多软件(几十上百款),想要把这些软件分门别类,并且还能快速的调用,那么用这款软件是觉得OK的。
显示在任务栏上面的叫做工具栏,点击工具栏后出现的叫做菜单,菜单里面还能再进行划分(可以用标题或分隔符去隔开分组)

官网地址: https://www.truelaunchbar.com/

功能: 软件快速启动工具,方便那些一整天不退回桌面的人群

界面效果(有人觉得难看,但是我并不觉得)

  1. 软件没有启动项,开机后基本上没有加载项目,东西的启动项非常的巧妙。
  2. 性能占用很小,可设置的选项多,该有的基本上都有。
  3. 没有多余的动画,响应速度快。
  4. 菜单的密度高,可读性好。
  5. 右键悬浮在本电脑安装的软件上时,会弹出最近打开的项目文件。

image

悬浮弹窗

使用体验

软件作者在俄罗斯,由于被制裁收不到货款,再加上Win11的桌面Mac化之后购买量减少了,所以干脆免费下载了。

这种类型的软件主要看的是辨识度和软件列表密度,Quicker的问题在于密度,Fences的问题在于辨识度。

Quicker之类的快捷启动工具,基于中键启动的快捷操作也不是所有软件都支持,比如Inventor、AutoCAD、NX、SW之类默认中键是拖拽或者手势的,100%需要禁用掉。如果不使用中键,就是所谓快捷键唤醒了,这东西有个问题,就是软件类目多了之后就需要加层级,一层20个软件,100个软件要加5层(我个人是不建议这么干,因为Quikcer的菜单很多都是用来存放动作的),切换的层数获取的是鼠标的原始输入数据,滚动一格就是滚动一页,电竞鼠标滚轮少就非常尴尬,办公鼠标的那种格数多的就非常合适。

Stardock出品的Fences可以快捷键置顶桌面的分区(Fencse4后出的新特性),但是这东西有个问题,如果有20个版本的软件,使用一模一样的Logo,同时出现在屏幕上,能否第一时间找到这款软件?这种平铺式的操作缺点就是辨识度太差。另外就是Stardock这家公司的软件升级是版本买断制,新版本是要重新购买的。
这玩意的性能问题一直是个大问题,使用他们家的Groupy这款软件,多少会感觉到他们加了动画之后反应很慢,还容易崩溃,但是,在设置里面找不到任何关于动画的设置,如果对于响应速度有要求,慎重购买,慎重使用

软件少的话,用什么都无所谓,软件多的话,老老实实找个密度高的,比如TLB这种软件,或者是上Listary、Everything、utools、优效文件助手之类的搜索启动。

Sizer (免费)(英文)

使用场景: 一些特定的场景,比如一些需要并排窗口展示内容的文章需要精确的进行截图,比如480*640分辨率的窗口,没有这款软件还真的截不了图。

官网地址: Sizer 4.0 by Brian Apps

功能: 给软件窗口设定一个分辨率,拉伸到指定大小,适用于严谨的需要设定分辨率的截图,特别是需要截图大小一致或者网页排版的时候。

设置窗口

设定分辨率对于固定分辨率截图非常有用,软件支持 Vista、Win7、Win10、Win11,最新版的 4.0 已经重写功能和UI。

image

软件菜单

  1. 右键窗口最大化按钮,会出现上图所示菜单,尺寸可自定义。
  2. 右键窗口边框出现拉伸图标时,会出现同样的选择菜单。
  3. 左键拖动窗口右下角,会即时显示窗口现在尺寸,这个比较实用。​​
  4. 4.0版本默认快捷键Ctrl+Win+Z​。

使用体验

  1. 右键窗口最大化按钮”与“右键窗口边框”这两个功能与Aquasanp这类软件有冲突,因此,使用时最好是使用快捷键唤出窗口。
  2. 非常的好用,截图不用它,你根本没法截图,Sizer+PixPin简直横扫一切!

WindowTop (买断)(英文)

使用场景: 如果你习惯晚上不开灯玩电脑,那么你多少需要暗色主题的软件,但是很多软件并不具备这样的功能,但是这款软件的“SET DARK”功能,可以让你的窗口变为暗色。
有些直播场景,要避免看到Logo,也可以使用这款软件对直播窗口进行截图,然后再放到直播画面当中,这个窗口裁切功能也是非常实用的功能。

官网地址: https://windowtop.info/
项目地址: Releases · WindowTop/WindowTop-App · GitHub

软件价格:55RMB(很便宜值这个价格)

功能: 可以将窗口透明、反色、裁剪、暗色并附带效果的窗口工具箱

  1. Always on Top:

    1. 窗口置顶
    2. 可以附带不透明度调节
    3. 可以附带窗口边框颜色


    1. Anchors:

      1. 没有最小化的窗口,但是被覆盖的窗口会自动生成一个浮动图标,悬空则可以预览窗口,点击则激活窗口。
      2. 如果浮动图标下方有内容(文本/图像),则浮动图标会自动远离该内容(可以根据需要关闭)。

  2. PiP:

    1. 窗口裁剪

    2. 裁剪窗口可以缩放大小

    3. 裁剪窗口自动避让

  3. Opacity + Click Through:

    1. 透明窗口穿透(慎用)
  4. Dark Mode:

    1. 暗色模式
  5. Glass Mode:

    1. 背景磨砂玻璃效果

软件体验

这个软件并不是鸡肋,实际上功能非常的强。 特别是Anchors这个功能,把窗口悬浮,这比Alt+Tab按键更加的实用。
另外就是,没有夜间模式的软件可以使用这个软件实现夜间模式,同时也非常适合一些需要特定区域显示的用户,比如直播用户。

裁剪的软件窗口区域还可以再次进行缩放,效果还不错,就是需要熟悉一下这个操作流程,上手需要一定的难度。

软件对性能有要求!

软件本身是靠GPU进行计算的,因此对算利有要求,锚、模糊、夜间模式这些都是需要GPU进行计算的,电脑性能低的多少是要掂量一下的。

我这边发现Anchors****锚功能开启Auto-move Algorithm(自动避让)之后在某种特殊情况下会触发导致软件、外设出现延迟,如果使用WindowTop发现此类问题的,可以尝试把锚功能避让给关掉,如果还不行,那只能退出软件了。
PIP是根据窗口判断,没卡顿这个问题,至于为什么会导致卡顿,我这边也一直在观察并定位问题,也一直在跟开发者反馈。但是瑕不掩瑜,我可以说这软件是个好软件,是值得大家去用的。

后台常驻软件

任务栏管理软件

7+ Taskbar Tweaker (免费)(支持中文)(必装软件)

使用场景: 日常的电脑使用中,几十个的Chrome窗口、几十个文件管理器窗口,应该不少见的,但是,如何对这些窗口进行管理,这就是这款软件的使用场景。

官网地址: 7+ Taskbar Tweaker - Ramen Software

功能: 任务栏增强软件

使用体验

我从来没有用过这么好的状态栏增强软件,简直能颠覆我对任务栏的认知!

软件的部分交互逻辑与Groupy2冲突,平时使用时多少是需要尽量避免一些容易产生问题的操作。

很多人不喜欢Win11的任务栏与任务栏角合并,但是,当软件窗口多到任务栏放不下的时候,怎么办?这不还是得用这款软件进行管理么?

窗口标签化管理

使用场景: 单个显示器内的软件窗口过多时,可以对其添加标签页,通过合并标签页进行合并管理,通过点击标签页既可切换窗口,就是这款软件的用途。

TidyTabs (买断)(支持中文)

官网地址: TidyTabs Window Manager: give every program a tabbed user interface

免费版只能单屏使用,专业版价格:149RMB(价格虚高)

功能: 窗口标签化软件,给软件再加一个标题标签

窗口贴边的时候,鼠标放到标题栏上的时候会在窗口标题栏的中间弹出标签,而窗口未贴边时则是在窗口标题栏之上弹出标签。
拖动标签则可以将两个窗口叠加,最大化之后,标签会进行隐藏,而这个隐藏多少会对使用造成影响,因为看不到标签名,弹出来的标签也会挡住现有的窗口。

贴边窗口的标签弹出效果

使用体验

标题是采样抽屉式隐藏,因此可辨识度比较差,而且还会挡住标题栏,不过倒不像Groupy那样导致窗口卡死。​​

Groupy 2 (买断)(支持中文)

官网地址: Stardock Groupy 2: Tabs for Windows
免费使用三十天,单用户价格:65RMB

功能: 窗口标签化软件,给软件再加一个标题栏


使用体验

1.比 tidyTabs 好用,它可以固定是生成一个新标签栏,所以不会挡住标题。
2.拖动时会根据规则自动吸附,但是,规则必须要设置好,不能调得太灵敏,不然会疯狂吸附所有窗口(谨记)。
3.勾选“始终显示此类窗口的标签”这个选项,Chrome系浏览器上点击它创建的标题栏,然后再点击窗口本身的标题栏会直接卡死、崩溃。
4.如果使用的Groupy,再使用WindowGrid对其他窗口进行操作后,可能会导致Chrome系 ^*****^ 的软件卡死。
5.软件关闭之后,服务就不能重启了,必须注销才能成功启动,因此建议只在软件中对软件进行禁用。
6.只适用于原生系统环境,不适合第三方窗口管理软件,比如虚拟桌面Dexpot、VirtuWin之类的。
~*这里的chrome系包括Visual Stuio Code、思源笔记之类的Electron的软件。~

当然,软件的选择与否,还是要看你们的使用场景。可能你不使用虚拟桌面,你就没有我这么多问题。

软件的选择​

  1. TidyTabs:完全不会碰到窗口卡死的问题,但是窗口管理的效果不是很好,主要是窗口创建标签后,窗口不行很醒目。
  2. Groupy 2:窗口可能会崩溃,但是窗口管理效果很好,规则设置比较多,上手难度稍微高。

作为 TidyTabs 的付费用户,个人建议是买 Groupy 2,用起来会比 TidyTabs 顺手,把容易崩溃的软件拉黑名单,也就差不多了,但是考虑到Groupy的卡顿问题,建议是深度试用30天再购买

TidyTabs(左) 对比 Groupy(右) 浮动窗口对比

窗口吸附、贴边、拉伸管理

使用场景: 系统的Windowsanp功能的效果是比较有限的,你需要把窗口非常靠近角落,或者是非常靠边才具有拉伸效果。而吸附效果就给更弱了,有时候需要调整窗口布局方便观察,系统没有这个功能,多少会让窗口多那么一点或少那么一点。

WinDock (免费)(英文)

官网地址: WinDock — ivanyu

功能:窗口贴边、贴边自动拉伸、窗口吸附

使用体验

启动拉伸的效果不佳,窗口都超出屏幕边界了,还没出现吸附效果,这贴边效果相对较差。

AquaSnap (买断)(支持中文)

官网地址: AquaSnap Window Manager: dock, snap, tile, organize

软件价格: 149(价格虚高)

功能: 窗口吸附、窗口拉伸、窗口透明化

软件可以实现上、下、左、右、左上、右上、左下、右下的贴边效果,按住 Ctrl 拉伸时可以自动挤压与旁边的窗口。
鼠标顺时针与顺时针转圈,可以实现窗口透明还是不透明,也可以实现窗口置顶。

窗口拖拽与挤压

好几个软件有这个拖拽时挤压与拉伸,但是都很卡,比如Actual Window Manager也有这个功能,但是非常的卡!

使用体验

软件本身的晃动窗口透明的属性被其他软件所弱化了,目前还能打的就是窗口管理(吸附、对齐、拉伸)这块了。虽不能完全替代系统的 Windowsnap,只能增强系统的 Snap 效果,搭配 AltSnap 效果使用会更好,体验是非常好的。

默认的快捷键和系统快捷键有冲突,因此强烈推荐使用Alt+UIO/JKL/M,.这9个按键去调整窗口的9个位置。

软件选择

  1. Windock:软件效果不是很明显;
  2. AquaSanp:这软件开了和没开是两个效果;

窗口透明化、窗口拉伸很容易被 AltSnap、Stack、PowerToys Fancyzones、这些软件所替代,所以这个软件的优势目前就只有 Snap 效果了。

窗口辅助管理

使用场景: 多屏幕用户有时候使用软件会碰到一种情况,当窗口的标题栏伸出屏幕之外,怎么把它拽回来,唯一且有用的方案就是打开任务管理器,然后杀掉任务,如果是任务管理器抛跑出屏幕外边,该怎么办?

altdrag (免费)(于2015年停止更新)

项目****地址: AltDrag

功能: 按住 Alt 实现窗口管理

按住 Alt,然后再按住右键,可以拖动鼠标调整窗口大小大小(此时可以松开 Alt 键);
按住 Alt,然后再按住左键,可移动窗口(此时可以松开 Alt 键);

使用体验

软件停止更新,用起来比维护分支差很多。

AltSanp (免费)(中文)(altdrag 的维护分支)

项目****地址: GitHub - RamonUnch/AltSnap: Maintained continuation of Stefan Sundin's AltDrag

功能: 按住 Alt 实现窗口管理

由于 altdrag 没有进行维护,后续有人开了个分支进行维护,功能比 altdrag 更加完善。在这个分支版本的基础上,可以设定为按下 Alt,就可以拖动鼠标移动窗口,且不需要按下任何鼠标按键就可以完成操作。

双击 Alt 全屏放大窗口;
按住 Alt 上下滚动滚轮则调整窗口透明度;

​​​​​​​​​​

使用体验

有时候要按 Tab+Alt 快捷键,它反而拖拽起窗口来了,习惯鼠标单键拖拽的,用这个软件多少水土不服,因此建议将一些软件拉黑名单,特别是全屏最大化的软件窗口。

也强烈建议这个软件搭配 AquaSnap 这个软件进行使用,窗口管理效果会非常的好。

我个人是主要使用三个操作:

  1. 按下Alt,然后移动鼠标时可以拖拽窗口;
  2. 双击Alt,可以切换全屏还是原窗口大小;
  3. 按下Alt,点击一下右键,则可以调整窗口大小;
  4. 按下Alt,上下搓动滚轮,则可以调整窗口透明度;

软件选择

软件直接选择维护分支的 AltSnap,支持中文,且一直有人维护,快捷键设置也更加丰富且完善。

软件窗口布局(软件分屏)

使用场景: 现在的显示器的分辨率都非常大,因此大部分人都想要合理的分配屏幕空间用于拜访各种软件窗口,比如,左边敲代码,右边看文档。如何快速的规划这个窗口布局,如何把软件放入指定的区域?这是这些窗口布局软件所应对的场景。

矩阵窗口布局

WS Grid+ (流氓软件)

功能: 按住 Alt 键就可以移动窗口,窗口可以按格子的方式进行布局。

WS Grid+-20231217134741-keo0in6

软件劝退

直接写入到 C 盘的 Windows 目录路径下,找不到启动项,找不到运行线程,很难卸载,而且没有激活会疯狂弹窗口,很流氓的软件,千万不要下载。

WinSize (爱发电)(中文)(小众软件用户出品)

论坛地址: WinSize 4.0 - 用快捷键调整窗口大小、位置,再大的屏幕也能摆满[Windows] - 小众软件
项目地址: GitHub - dmscode/WinSize: AHK 的快速设定窗口尺寸的小工具
爱发电价格:35RMB(免费下载免费用,有兴趣赞助可以赞助一下)

功能: 按住左键移动,当前窗口则缩放到鼠标移动的对角线所对应的区域。

Excel 用户可能需要这个辅助线,比如我。
窗口本身也是划分布局的,但是这个布局是需要在文本里面进行编辑,在易用度上差了不少,由于是要搭配鼠标进行操作,但是我的鼠标操作都被其他软件所占用了。

使用体验

作者在论坛吐槽卖不出,我个人倾向于键盘调整区域,个人觉得对于我来说不如 WindowGrid 顺手,不过这种窗口调整的操作应该适合部分人群。

WindowGrid (免费)(英文)(2016 年后停止更新)

官网地址: http://windowgrid.net/

功能: 移动鼠标的时候,敲空格(Space)可以让窗口按格子的方式进行布局。

鼠标左键拖动窗口标题栏,按 Sapce 之后,触发 WindowGrid,并以当前鼠标位置所在区域为起始点,移动鼠标区域再敲击,则重置起始点。

使用体验

非常不错,适合给软件截图的时候拉伸到一样的窗口大小,使用起来也方便。这款软件与 Groupy 搭配对 Chrome 使用时,会导致 Chrome 崩溃,但是单独使用时是没事的。

自动平铺窗口布局

komorebi(免费)(英文)

项目地址: GitHub - LGUG2Z/komorebi: A tiling window manager for Windows 🇵🇸

功能: 软件窗口自动管理,将窗口放入预设的指定区域

使用软件时需要对CLI敲命令才实现窗口管理。

使用体验

打开的窗口自动管理,反正就是你用起来和 FancyWM,非常的莫名其妙,鼠标基本上控制不了软件窗口。

bug.n (免费)(英文)

项目地址: GitHub - fuhsjr00/bug.n: Tiling Window Manager for Windows

功能: 软件窗口自动管理,将窗口放入预设的指定区域

软件打开后,会自动排列你当前打开的窗口内容,会自动生成一个标题栏,多少觉得有点丑,而且比较难用。
右键点击右上角的图标,则显示退出软件选项。

使用体验

打开的窗口自动管理,反正就是你用起来和 FancyWM,非常的莫名其妙,鼠标基本上控制不了软件窗口。

FancyWM (免费)(英文)

项目地址: GitHub - FancyWM/fancywm: FancyWM - a dynamic tiling window manager for Windows 10/11

功能: 软件窗口自动管理,将窗口放入预设的指定区域

FancyWM is a dynamic tiling window manager for Windows 10/11.
这是一个动态平铺窗口管理器,适用于Windows 10/11。

:ballot_box_with_check: Create dynamic tiling layouts with mouse or keyboard
:ballot_box_with_check: 创建动态平铺布局与鼠标或键盘

:ballot_box_with_check: Move window focus with keyboard ([⇧ Shift] + [⊞ Win], then [→])
:ballot_box_with_check: 使用键盘移动窗口焦点([ Shift] [ Win],然后[→])

:ballot_box_with_check: Swap windows with keyboard ([⇧ Shift] + [⊞ Win], then [⇧ Shift] + [→])
:ballot_box_with_check: 用键盘切换窗口([ Shift][ Win],然后[ Shift][→])

:ballot_box_with_check: Swap windows with mouse (hold [⇧ Shift] while dragging)
:ballot_box_with_check: 用鼠标切换窗口(按住Shift键拖动)

:ballot_box_with_check: Horizontal panels ([⇧ Shift] + [⊞ Win], then [H])
:ballot_box_with_check: 水平面板([⇧ Shift] + [⊞ Win], 然后 [H])

:ballot_box_with_check: Vertical panels ([⇧ Shift] + [⊞ Win], then [V])
:ballot_box_with_check: 垂直面板([⇧ Shift] + [⊞ Win], 然后 [V])

:ballot_box_with_check: Stack panels (tabbed layouts) ([⇧ Shift] + [⊞ Win], then [S])
:ballot_box_with_check: 堆栈面板(选项卡布局)([ Shift] [ Win],然后 [S])

:ballot_box_with_check: Panel embedding
:ballot_box_with_check: 嵌板

:ballot_box_with_check: Jump to virtual desktop ([⇧ Shift] + [⊞ Win], then [2])
:ballot_box_with_check: 跳转到虚拟桌面([⇧ Shift] + [⊞ Win], 然后 [2])

:ballot_box_with_check: Move focused window to virtual desktop ([⇧ Shift] + [⊞ Win], then [⇧ Shift] + [2])
:ballot_box_with_check: 将焦点窗口移至虚拟桌面([⇧ Shift] + [⊞ Win],然后 [⇧ Shift] + [2])

:ballot_box_with_check: Floating window mode ([⇧ Shift] + [⊞ Win], then [F] or rule-based)
:ballot_box_with_check: 浮动窗口模式([⇧ Shift] + [⊞ Win],然后[F] 或基于规则)

:ballot_box_with_check: Auto-float windows which cannot fit
:ballot_box_with_check: 无法适应的自动浮动窗口

:ballot_box_with_check: Customizable keybindings
:ballot_box_with_check: 可自定义的键绑定

:ballot_box_with_check: Support for multiple monitors
:ballot_box_with_check: 支持多显示器

:ballot_box_with_check: Support for virtual desktops
:ballot_box_with_check: 支持虚拟桌面

:ballot_box_with_check: Allows window maximization
:ballot_box_with_check: 允许窗口最大化

:ballot_box_with_check: Toggle tiling on/off ([⇧ Shift] + [⊞ Win], then [F11])
:ballot_box_with_check: 切换平铺模式(按住Shift键,按住Win键,然后按F11)

:ballot_box_with_check: Low CPU usage (<1%)
:ballot_box_with_check: 低 CPU 占用率(<1%)

:ballot_box_with_check: Disable animations for longer battery life
:ballot_box_with_check: 禁用动画以延长电池寿命

:ballot_box_with_check: Windows open in focused panel
:ballot_box_with_check: 在聚焦面板中打开窗口

:ballot_box_with_check: Remap activation hotkey to [⇧ Shift] + [⊞ Win], [Ctrl] + [⊞ Win] or [Alt] + [⊞ Win]
:ballot_box_with_check: 将激活热键重新映射为 [⇧ Shift] + [⊞ Win]、[Ctrl] + [⊞ Win]或 [Alt] + [⊞ Win]

FancyWM 使用 [⇧ Shift] + [⊞ Win] 作为命令序列的开始(激活热键)。要启动命令序列,请同时按下并释放这些键,然后按您在设置中配置的键绑定之一。

软件窗口都是英文,没有英文阅读能力的,多少还是不会设置这个软件,本身软件的定位就是自动排列,多少觉得就算设置了也不会怎样。

使用体验

打开的窗口自动管理,缺点是它自己动的,你改不了,而且窗口多到一定程度,它就不自动排列了。

软件劝退

这些自动管理软的的窗口布局根本就不适合进行管理,效果如何,多少比较随缘。
如果我没搞错的话,这类软件基本上是Linux那搬过来的软件逻辑,比如i3之类的软件重新套了个皮?但是感觉相比于Llinux上的软件,这些软件的就要逊色不少。

预设窗口布局

AOC Screen+ (免费)(中文)

官网地址: https://www.aocmonitor.com.cn/download

功能: 软件窗口管理,将窗口放入预设的指定区域

软件使用的时候会出现这种五颜六色的窗口区域,只要移动窗口就会出现,不能设定快捷键,过于简单粗暴。

  1. 拖动顶栏移动::white_check_mark:
  2. 拖动窗口移动::x:
  3. 鼠标移动容错::x:
  4. 键鼠配合移动::x:
  5. 窗口布局编辑::x:
  6. 布局编辑体验::x:
  7. 快速布局切换::x:
  8. 横跨分区合并::x:

使用体验

用左键移动窗口时就会出现区域选择界面,会直接吸附到区域,你还不能取消,非常碍事,而且只能使用预设的区域,不能自己设定窗口布局,没有快捷键切换布局之类的。

  1. 没有快捷键选择布局;
  2. 没有快捷键选择区域;
  3. 不能编辑布局区域;
  4. 没有设置;
Powertoys Fancyzones(免费)(补丁支持中文)

项目地址: GitHub - microsoft/PowerToys: Windows system utilities to maximize productivity
补丁地址: GitHub - zetaloop/PowerToys-CN: PowerToys Simplified Chinese Translation 微软增强工具箱 社区汉化

功能: 微软员工摸鱼出品的工具箱,出了很多比较实用的小工具,比如窗口管理、重命名、系统快捷键管理等工具

LTSC1809 最高只能支持 V0.35 版,奇葩的是,它这个老版本的快捷键是不能设定的,它默认替换的是系统的快捷键,多少有点搞事。

需要说明的是:

  1. Win11的部分功能是从Powertoys里面拿的,所以里面的功能是比Win11里面的更强;
  2. Powertoys是不支持中文的,因此只能靠第三方的安装补丁,而且必须是版本号对应,想用最新的版本,必须等第三方更新。

Powertoys 优缺点

由N个插件构成的软件,多半是多尔不精,Powertoys也属于这种类型。这种工具合集的软件,有时候你往往就只是想用其中的一个功能,但是,它却有几百几个GB大小。
但是,Powertoys并没有犯其他软件那样存在不同的插件或者功能之间相互影响的问题,Powertoys的每个插件都设置了启用开关,可以任意关闭开启插件。

这个随便搓的布局,使用的时候有bug,5号分区和2分区是重叠的,如果把窗口放置到重叠的区域,会导致拖拽的软件崩溃。
不过说回来,这编辑器还是挺好用的,上手难度低。缺点就是切换布局没有快捷键,打开菜单,在菜单里面选择。

使用体验

很多功能都有第三方软件替代,而且功能更强更实用,就比如Fancyzones这个插件,它的功能比起Sanpit就差很多了,但是它还是比ACO Screen+强,所以这种东西的优势仅在于免费,另外这个东西的新功能不支持老系统。

多少是搞不懂微软,本来就是几百Kb就搞定的功能,还要找个几百MB的Powertoys去解决。

Stack Window Manager (买断)(英文)(新版本不支持 Win10 以下系统)

官网地址: Stack
软件价格: 42RMB(支付婊)

功能: 软件窗口管理,将窗口放入预设的指定区域

没有 Microsoft Store 的话,可以到 CMD 或者 Powershell 里面进行安装 输入 **wsreset.exe ** 或者 **wsreset -i ** 均会自动完成 Microsoft Store 的安装,LTSC 1809 安装后如果出现访问问题,重置一下 IE 浏览器即可~(关键词:微软账户登录报错 0x80190001 的解决方案)~,LTSC 2021 则需要再次运行一下 **wsreset.exe ** 或者 wsreset -i

V1.0 支持 Win7,免费使用,但是功能相对 V2.0 版本少,设置选项也少,不过比 V0.35 版本的 Powertoy Fancyzones 要强。​​
V2.0 是买断制,界面提示相对 1.0 多了不少,当然,也是比最新版本的 Powertoy Fancyzones 要强。

在窗口的任意

作者开新公司去了,这些软件的后续维护更难说了,更何况,后面讲到的几款软件,都比他这款更完善,竞争力弱,自然更没有动力去更新了。

  1. 拖动顶栏移动::white_check_mark:
  2. 拖动窗口移动::white_check_mark:
  3. 鼠标移动容错::x:
  4. 键鼠配合移动::x:
  5. 窗口布局编辑::white_check_mark:
  6. 布局编辑体验::x:
  7. 快速布局切换::white_check_mark:
  8. 横跨分区合并::white_check_mark:

使用体验

1.软件拖拽体验是比Fancyzones好的,软件的最新版本需要安装 Microsoft Store 才能进行下载。
2.修改布局需要学会 XAML 窗口布局,布局这块上手难度太高了。。
3.因为 UWP 应用不能手动设置缩放,因此在查看窗口布局时,100%“缩放与布局”显示的 Laout 更多,但是字体会很小,布局选择很不友好。

MaxTo (买断)(中文)

官网地址: 首页 - MaxTo
软件价格: 29欧(225RMB)(Paypal)

功能: 软件窗口管理,将窗口放入预设的指定区域

  1. 拖动顶栏移动::white_check_mark:
  2. 拖动窗口移动::white_check_mark:
  3. 鼠标移动容错::x:
  4. 键鼠配合移动::white_check_mark:
  5. 窗口布局编辑::white_check_mark:
  6. 布局编辑体验::white_check_mark:
  7. 快速布局切换::white_check_mark:
  8. 横跨分区合并::white_check_mark:

使用体验

快捷键唤出当前布局界面,且可以直接修改,非常的方便。软件基本上无可挑剔,该有的都有,简单好用,但是价格太贵了,除了价格都没什么问题。

SnapIt (买断)(英文)(开源)

软件本体: SnapIt - Official app in the Microsoft Store
开源UI: GitHub - enginkirmaci/SnapIt: Snap It! is a window manager for Windows 10/11 that organizes your windows to improve productivity when working with wide and multiple screens. It's designed to be quick and simple.
软件价格:35RMB(支付婊)

功能: 软件窗口管理,将窗口放入预设的指定区域

  1. 拖动顶栏移动::white_check_mark:
  2. 拖动窗口移动::white_check_mark:
  3. 鼠标移动容错::white_check_mark:
  4. 键鼠配合移动::white_check_mark:
  5. 窗口布局编辑::white_check_mark:
  6. 布局编辑体验::x:
  7. 快速布局切换::white_check_mark:
  8. 横跨分区合并::white_check_mark:

窗口布局界面

可以对某个布局设置快捷键,且切换布局的同时可以打开指定软件,这是Apps栏的设置菜单:

窗口区域设置(开源版本无此功能)

鼠标操作设置,可以调整鼠标触发灵敏度,可以设定在窗口任意区域拖拽时管理窗口,也可以设定只拖动标题栏:

鼠标动作设定

拖拽时显示的界面也可以进行更改,默认的主题下拖拽效果如下:

拖拽效果

当然,这款软件也并不是十全十美,功能虽然齐全,但是布局的编辑逻辑还是有问题的,布局没有贴边效果,有时候会把窗口拉伸到状态栏底下,因此体验不是很好。

美中不足

使用评价

个人觉得非常的不错,价格合适,功能也全,除了编辑体验非常不好,都是可以的。至于编辑体验,可以去跟开发者反馈,加入一个磁吸效果也就OK了。
目前的话,布局编辑没有限制,因此布局超出编辑区域,然后,没有吸附更不能对齐,再者就是需要精确修改,必须导出后对.json文件进行编辑,调多大的图标、放在哪里,都需要精确计算,没有吸附、限位、居中对齐边角对其,可以说是非常的反人类。

虽然这个软件是有使用的XAML写的,但是,并不是用的XAML存储数据,多少还是觉得非常奇怪。

开源版本少了任务栏预览布局和应用配置界面,对于使用来说不会造成太大的影响,也是算很不错的了。

软件选择
  1. 不想花钱:Powertoy Fancyzones、Stack Window Manager(V1.0版本)、SanpIt(Github开源版本)
  2. 钱少体验好:Stack Window Manager、SanpIt除了布局需要 XAML或者是改.json,花点时间弄起来布局,是不需要经常改动的。
  3. 极致体验:Maxto布局可以直接修改,也可以快捷键切换布局,与 SanpIt 和 Stack Window Manager 相比,他们的区别在于这两个都很容易对布局进行修改。Maxto 支持老系统 225RMB,SanpIt 只支持新系统 35RMB。

屏幕辅助管理

使用场景: 多屏幕用户在移动鼠标的时候会碰到,左边是小屏幕,右边是大屏幕,从大屏幕的边角是不能移动到小屏幕的边角的,这个叫做死区,而这类的软件就为了解决这个问题而存在的。

Dual Monitor Tools (免费)(中文)

功能: 软件窗口管理、显示器管理、鼠标去死区

使用体验

鼠标去死区可能有 Bug、窗口管理只支持键盘管理(上下左右停靠)

LittleBigMouse (免费)(英文)

项目地址: GitHub - mgth/LittleBigMouse: DPI Aware mouse move across screens

功能: 显示器管理,鼠标去死区

Bug!

个别系统平台使用这种软件会导致bug,比如贴边然后自动跳到右上角,很容易把窗口点关闭。因为点击关闭是识别的抬起,不是按下,你按下的时候,鼠标在中间,结果你抬起的时候在右上角,会非常的苦逼的。

使用评价

如果没有出现bug,那么在多屏幕且分辨率不同的情况下,会非常的好用。

软件选择

  1. 如果是用于窗口去死区,选择 LittleBigMouse 即可。

(伪)硬件窗口管理

使用场景: 如果你有十几个屏幕,或者你想把显示器映射成十几个屏幕,那么只能选择这么一款软件,虽然有点卡,但是功能还是非常的齐全。

DisplayFusion Pro (买断)(中文)

官网地址: https://www.displayfusion.com/
软件价格:199RMB

功能: 屏幕管理、软件窗口管理什么功能都有,可以把一个屏幕分割成 N 个屏幕,且每个屏幕内的任务栏都相互独立

注意

这种一款软件里面集中了很多功能的软件多少回存在软件多而不精的问题,而这款软件最大的问题是:卡!

使用体验

功能多,设置面板复杂,上手难度大,而且又慢又卡,当然如果你需要十几个屏幕,那你只能使用这款软件进行管理,因为功能确实是多。

保存与恢复窗口布局

说明

现在的这些还原软件都不支持虚拟桌面,因此在虚拟桌面环境下还原的时候,窗口都是错位的。如果是想要保证比较不错的体验,建议还是在每个桌面下保存特定的软件使用环境,然后再到特定虚拟桌面下还原。

大多数软件是不支持第三方虚拟桌面的,因此能不能还原到扩展桌面,那倒是不得而知,我这边的话倒是看到部分软件是还原失败的。

软件使用场景

Window Layout Manager 作者原话:

Why would you want to do that? Well, in my case, if you’ve seen my home office setup, I regularly have a certain set of windows on a specific monitor and want to keep the layout the same but move them around because I angle and rotate one of the screens towards a guest that I’m showing something. In that case I just hit the hotkey or apply the layout so that all those windows get positioned exactly as they are on one of the other screens. That then clears a monitor for other display purposes.

你为什么要这么做?以我为例,如果你看过我的家庭办公室设置,我经常在一个特定的显示器上设置一组特定的窗口,我想保持布局不变,但要移动它们,因为我会将其中一个屏幕向客人倾斜和旋转,我要展示一些东西。在这种情况下,我只需按热键或应用布局,以便所有这些窗口的位置与它们在其他屏幕上的位置完全相同。然后清除显示器以用于其他显示目的。

SmartWindows (订阅/买断)(英文)

官网地址: https://smartwindows.app/

软件价格:199.99USD(1427RMB)

功能: 保存当前的系统打开的窗口,关闭软件或者重启系统之后,这个软件可以把保存的窗口打开,但是运行状态不能100%还原。

软件没什么功能,就是保存、恢复,仅此而已。

使用体验

保存时间非常久,十几秒钟的时间,在这个期间电脑是不能进行操作的。

Masaico (买断)(英文)

官网地址: https://www.soulidstudio.com
价格:19.99美元(143RMB)

功能: 自带窗口布局功能,保存当前的系统打开的窗口,关闭软件或者重启系统之后,这个软件可以把保存的窗口打开,但是运行状态不能100%还原。

使用体验

保存非常快,但是,保存的窗口,有个别软件无法启动,但是有保存记录。

AlomWare Toolbox (买断)(英文)

官网地址: https://www.alomware.com/
软件价格:25USD(178RMB)

功能: 保存粘贴板历史、保存路径访问历史、定时发送邮件、保存和恢复窗口、系统窗口快照

软件内置了Altdrag+WindowManager的功能,算是名副其实的工具箱了。

作者演示Quake保存

关闭的窗口只能在一个桌面启动,且不能100%还原窗口位置。

使用体验

这个软件并不能还原软件的运行状态,只能记录打开的窗口,然后,和SmartWindows一样,在需要还原窗口的时候把窗口启动。

这个软件的比起SmartWindows好的地方在于,它可以选择的保存的窗口,不像SmartWindows只能保存整个桌面窗口。

AutoSzier (免费)(有汉化)

官网地址: Automatically Resize Your Programs - AutoSizer

功能: 自动保存关闭的窗口位置和大小,在重新打开软件的时候还原位置和大小

功能不多,设置项目不多,稍稍学会点英文,上手难度不大。

软件界面设置界面

软件界面设置界面

使用体验

对于经常要调试软件窗口的人来说,将软件控制在某个区域非常有用。

Window Layout Manager (免费)(英文)

官网地址: Windows Layout Manager (WiLMa) By Stefan Didak – Stefan Didak

功能: 保存窗口位置和大小

软件基本上都是靠点击完成操作的,多少有点繁琐,但是功能算是非常齐全的了。

使用体验

保存的窗口只能在软件运行时去打开,已经关闭的软件窗口不能复原,但是只能打开列表点选窗口。

WindowManager (免费)(英文)

官网地址: DeskSoft - WindowManager - Window position and size manager

功能: 保存窗口位置和大小![WindowManager 3]

使用体验

保存的窗口只能在软件运行时去打开,已经关闭的软件窗口不能复原,不需要查找窗口需要点选即可。

软件选择:

  1. 对已经打开的窗口进行复位:WindowManager、Window Layout Manager
  2. 可对关闭的软件进行启动:SmartWindows、WindowManager、Masaico
  3. 现有的窗口保存工具都是对虚拟桌面无效!!!!

20 Likes

谢谢分享,A站玩的少,签到投了3蕉 :joy:

简单看了下,对于用过的软件感受大致相同,有需要在细读吧,先收藏了

A 发文有什么限制吗?全文全图看着不舒服

A站砍了文章区的富文本功能,由于排版不好看,只能上图片了。

你有没有想过,可以直接在这里发文字,而不是发图

1 Like

你和我走过的差不多同样的路径 , 我最终选择的方式是bugn + ahk自动检测窗口进行调整,原因就是自动化方便。
bugn的主要问题在于配置难以理解,但是它其实本身可以做到非常多样化,而且性能不错,我只用2个固定的模式,两个显示屏。
它可以其实分多个屏幕x多个桌面x多个布局。但我实在是懒得调试了

窗口布局再推荐一个 GridMove
功能处于矩阵与预设之间,既能与WindowGrid一样操作,也能像Powertoys预设为几个大块的区域并绑定快捷键(不过WinSize不也是能通过自定义达到预设区域的效果吗?)

顺便还能扩展讲一下虚拟桌面类的软件,如 VirtuaWin 等

还有就是用图片浏览文字实在不太方便,列个文字大纲应该能舒服不少

窗口布局变化比较小的情况下,用这些工具问题不大,但是窗口这些软件有点力不从心。

倒是花了半小时把图片发上来了,多少觉得有点难用。 :rofl:

现在小众也发上来了MD排版的,还是文字+图片的了。

目前的话多少觉得基于AHK之类的软件,还是没有那种分区合并之类的功能,简单使用倒是问题不大,前几天倒是用XAML搓了两天这种Span的功能,多少觉得这还是WPF之类更擅长的东西。

Winsize之类的预设窗口区域倒是见过不少,基本上都是需要在文本内编辑窗口区域,你不说,我倒是忘了这回事了。

用过Linux,linux的虚拟桌面真的很强,相比之下Win上面的很弱鸡,基本上没有当前所处的虚拟桌面指示。
有时候切了虚拟桌面,还感觉不出来到底切了还是没切,回头倒是会看看相关的,毕竟我也是在用虚拟桌面,目前倒是没有扩展到相关的软件类型。

写的好详细,楼主用心了,感谢分享

上来点个赞,建议主贴开一下 TOC,在编辑器工具栏的齿轮图标里吧。

首先要感谢你的分享,内容量非常非常的多
有时间摸鱼i的时候再看一下

有必要联动下我的AHK脚本 :smiley:

怎么感觉好像没效果

目前的话,用了Quicker和AltDrag之后,这类快捷工具的快捷键都冲突了,我现在反而可能要自己搓键盘去增加快捷键了。

我帮你插入好了,在编辑器齿轮图标——插入目录,一般我在文档最顶部插入。

之前有買過Groupy,不知能不能免費更新到2。

1 Like