PowerToys FancyZones 上手:3 分钟做出第一个窗口布局,告别手动拖窗口
【免费下载链接】PowerToysMicrosoft PowerToys is a collection of utilities that supercharge productivity and customization on Windows项目地址: https://gitcode.com/GitHub_Trending/po/PowerToys
PowerToys 的 FancyZones 是一款免费的 Windows 窗口管理工具:把屏幕划分成自定义区域,窗口拖进去就自动对齐、自动缩放。它解决的是一个每天都在发生的问题——你刚开完视频会议,想恢复到"左边代码、右边浏览器、角落聊天窗"的摆法,只能一个个窗口手动拖回来,位置总差那么几像素。用 FancyZones,这一步变成按住Shift拖一下,或按一下Win + 方向键。
它是什么:一张贴在屏幕上的"布局图纸"
FancyZones 是微软官方开源工具集 PowerToys 里的一个模块,你可以把它理解成一张贴在屏幕上的图纸:图纸上划分好若干块区域(zone),你把任意窗口拖到某块上松开,窗口就精确地填满这一块。图纸本身随时可以换——网格、分栏、自由绘制都行,每个显示器还能有自己的图纸。
它适合两类人:一是多窗口重度用户(开发、剪辑、客服、研究),桌面常年开着五六七个窗口;二是多显示器用户,需要窗口在屏幕间快速挪动。它不替代 Windows 自带的"贴靠"功能,而是把"贴到固定位置"这件事做得更自由。
能力速览:先看你用得上哪几个
| 能力 | 说明 | 什么时候用 |
|---|---|---|
| 预设布局 | 网格、列、行、自由形式四种模板,一键套用 | 快速起步,先不折腾 |
| 自定义布局 | 手动画任意大小和形状的区域,可命名保存 | 有"代码占 2/3 屏幕"这类明确比例需求 |
| 布局热键 | 给每个布局绑定快捷键,按下直接切换整套布局 | 在"办公/开发/会议"等模式间来回切 |
| 快速布局切换 | 设置里开启后,可在布局间快速轮换 | 经常在两个固定布局间切换 |
| 跨显示器 | 每个显示器独立布局;Win + 方向键可把窗口移到其他屏幕的区 | 双屏、三屏用户 |
| 区内窗口切换 | 快捷键按顺序切到当前区域内的下一个/上一个窗口 | 一个区里叠了多个窗口时 |
| 应用排除 | 在设置里逐行填入不参与吸附的应用名 | 游戏、视频播放器想保持全屏 |
| 自动回位 | 新窗口自动回到它上次所在的区;取消吸附时恢复原来的大小 | 减少每天重复的拖拽 |
从 0 到可用:先让一个窗口"啪"地贴上去
第 1 步:安装并启用 FancyZones
PowerToys 完全免费。最快的方式是在 PowerShell 里运行:
winget install Microsoft.PowerToys也可以在 Microsoft Store 直接搜索 "PowerToys" 安装。装完后打开 PowerToys 设置,在模块列表里打开FancyZones的开关。
第 2 步:打开布局编辑器,套一个预设
按默认的Win + Shift + Z,你会看到整块屏幕被半透明的布局选择器覆盖(这个快捷键可以在设置里改)。
先选第一个显示器对应的布局,然后挑一个Columns(列)预设点一下。屏幕立刻被竖着切成几列——这就是你的第一张"图纸"。
第 3 步:完成第一次吸附
随便打开一个窗口(比如记事本),按住它的标题栏拖动,你会看到屏幕上的分区被高亮提示;把窗口拖到某一列上松开,窗口精确贴合该区域。第一次看到这个效果,基本就算入门了。
顺手改两个关键设置
在 FancyZones 设置页里(设置 → FancyZones →Edit zones上方有行为开关,页面如下),建议先动两处:
- Hold Shift key to activate zones while dragging:开启后,只有按住
Shift拖窗口时才显示分区。平时拖窗口完全不受打扰,习惯成自然。 - Override Windows Snap hotkeys (Win + Arrow):开启后,
Win + 方向键不再用系统默认的贴靠,而是让窗口在你的分区之间按顺序移动,比鼠标快得多。
这两项都开了之后,日常工作流就闭环了:鼠标拖拽管精细摆放,Win + 方向键管快速腾挪。
三个高频场景的现成做法
场景一:写代码的桌面——代码占大头,终端和浏览器垫边
预设模板凑不出"一大两小"的比例,用自定义布局:
- 按
Win + Shift + Z打开编辑器,点Create new layout,选 Freeform(自由形式)。 - 用鼠标在屏幕上框出三个区:左侧一块大的占约 2/3 宽度,右侧上下各一块小的。不满意就拖边缘调整,选中区域还能删除重画。
- 保存时命名为"开发模式"。顺手给这个布局绑定一个布局热键(比如
Ctrl + Alt + 1),以后按一下就整套切换。
以后 VS Code 拖进左区、终端拖进右下、浏览器拖进右上,各就各位。窗口想撤出分区时拖出去即可,取消吸附后窗口会恢复原来的大小(默认行为,可在设置里关)。
场景二:双屏协作——每个屏一张图纸,箭头键跨屏搬窗口
- 在布局编辑器顶部的显示器列表里,分别给主屏和副屏选不同的布局,比如主屏 3 列(工作窗口),副屏 2 行(参考资料)。
- 打开Move windows between zones across all monitors when snapping with (Win + Arrow),之后连按
Win + →,窗口会依次穿过所有屏幕上的分区。 - 如果你希望一个窗口能同时跨两块屏幕摆放,再打开Allow zones to span across monitors——注意所有显示器必须使用相同的 DPI 缩放比例,否则该选项不生效。
另外两个容易忽略的开关值得开:Keep windows in their zones when the screen resolution changes(分辨率变化后窗口留在原区),以及Move newly created windows to their last known zone(应用重新打开时自动回位)。
场景三:开会 + 对照文档——行布局 + 区内窗口切换
- 用 Rows(行)预设:上面一行放视频会议,下面一行并排两个区放要对照的资料。
- 同一区里往往不止一个窗口(比如两篇 PDF),打开设置里的Toggle shortcuts for switching between windows in the current zone,用下一窗口/上一窗口两个快捷键就能在区内来回切,不用动鼠标。
- 给会议窗口再套一个"置顶"(见下节),笔记区永远在它旁边。
组合拳:把 FancyZones 接进你的日常启动流
FancyZones 单独用已经够用,和 PowerToys 其他模块串起来会更顺:
- PowerToys Run + FancyZones:
Alt + Space调出 PowerToys Run,输入应用名回车启动,再用Win + 方向键把新窗口一步挪进指定分区——启动和摆位一次完成。 - Always On Top + FancyZones:把常用小工具(时钟、剪贴板、笔记)设为始终置顶,再用分区固定它的位置,就得到一块"永远在那里"的浮动面板。
- Shortcut Guide:Windows 和 PowerToys 的快捷键一时记不住时,按
Win + /弹出全部快捷键速查,配合 FancyZones 的Win + Shift + Z、布局热键一起形成肌肉记忆。 - 布局还会跟随虚拟桌面切换而应用,你切到另一个虚拟桌面时看到的仍是该桌面绑定的布局,多桌面工作流不会乱。
避坑与自查:按现象对号入座
遇到不对劲时,按"现象 → 原因 → 处理"的顺序自查,多数问题不用重装:
拖窗口时看不到分区原因:你开了"按住 Shift 才激活分区"但没按
Shift;或者 FancyZones 模块没启用、快捷键被别的软件占用。 处理:确认设置里的拖拽行为选项;在任务栏托盘确认 PowerToys 在运行;把布局编辑器快捷键改成不冲突的组合。首次打开报 "The input does not contain any JSON tokens" 之类的解析错误原因:配置文件还没初始化。 处理:不用删东西,只需在 PowerToys 设置里点一次Edit zones(从设置入口启动编辑器),配置目录会自动生成,之后就不再报错。
布局改了不生效,或打开设置全是乱码原因:配置数据损坏。 处理:完全退出 PowerToys,删掉
C:\Users\你的用户名\AppData\Local\Microsoft\PowerToys\FancyZones目录下的EditorParameters、CustomLayouts、AppliedLayouts等文件,再重新启动并打开一次编辑器,按前文重新做布局即可。
某个窗口拖不动、分区对它无效原因:那个窗口以管理员身份运行,而 PowerToys 不是。系统会弹出"检测到以管理员权限运行的应用"的提示。 处理:以管理员身份运行 PowerToys;或者把该类应用加入排除列表。
游戏/播放器总被吸附原因:这些应用不该参与分区管理。 处理:在设置的排除列表里按每行一个应用名的方式填上,它们将按 Windows 原生贴靠行为响应。
想换布局却找不到入口原因:忘了布局热键。 处理:按
Win + Shift + Z随时打开编辑器选布局;或给常用布局绑定布局热键、开启快速布局切换,之后一键轮换。
回顾与下一步
FancyZones 做的事情其实就一件:把"窗口该摆在哪"从每天重复的肌肉劳动,变成一次性的布局资产。今天你可以只完成三件事:安装 PowerToys 并启用模块、按Win + Shift + Z套一个 Columns 预设、打开 Shift 拖拽和Win + 方向键两个开关。明天开工时给开发桌面画一个自定义布局,一周后你会给每个虚拟桌面都配好自己的图纸。
延伸资源(均为仓库内相对路径):
- 官方开发文档:doc/devdocs/modules/fancyzones.md
- 模块源码目录:src/modules/fancyzones/
- 布局编辑器代码地图(架构阅读入口):doc/devdocs/images/fancyzones/editor_common_map.png
【免费下载链接】PowerToysMicrosoft PowerToys is a collection of utilities that supercharge productivity and customization on Windows项目地址: https://gitcode.com/GitHub_Trending/po/PowerToys
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考