PowerToys FancyZones 窗口管理:画好分区,窗口拖一次就自动对齐
【免费下载链接】PowerToysMicrosoft PowerToys is a collection of utilities that supercharge productivity and customization on Windows项目地址: https://gitcode.com/GitHub_Trending/po/PowerToys
会议刚散,代码、浏览器、聊天窗还得逐个拖回原位,每次都要摆半天还总差几像素。PowerToys FancyZones 是微软开源的窗口自动布局工具:把屏幕划分成分区,窗口拖进哪个区就自动对齐、自动缩放。
🚀 先跑起来:三步看到效果
- 装好并打开模块。PowerShell 里执行一条命令,再到 PowerToys 设置里打开 FancyZones 开关:
winget install Microsoft.PowerToys- 按 Win + Shift + Z 调出布局选择器。整块屏幕被半透明的分区预览覆盖,选中主显示器,点Columns预设,屏幕立刻被竖着切出几列。
- 把任意窗口拖进其中一列。松开鼠标后窗口撑满该列、贴齐边缘,边界一个像素都不差——这就是第一个正反馈。
按你的桌面挑一套方案
预设凑不出想要的比例?挑最贴近你的一套照做。
纯代码桌面:主区占大半屏,终端浏览器垫边
代码编辑器永远占 2/3 屏幕,开完会回来一键还原。
- 按 Win + Shift + Z 打开编辑器,新建布局选Freeform。
- 框出左大右小的三个分区:左侧约 2/3 宽,右侧上下各一块。
- 拖分区边缘微调,选中的区域可删除重画。
- 保存并命名为"开发"。
最终画面:VS Code 落左区、终端落右下、浏览器落右上,三个窗口各占一格,边缘严丝合缝。
双屏工作流:主屏分列、副屏分行,箭头键跨屏搬窗
两块屏幕各有一套分区,窗口不用碰鼠标就能穿过去。
- 在布局编辑器顶部的显示器列表里,主屏选Columns、副屏选Rows。
- 打开Override Windows Snap hotkeys (Win + Arrow)。
- 再打开Move windows between zones across all monitors when snapping with (Win + Arrow)。
- 想让一个窗口横跨两块屏,打开Allow zones to span across monitors——前提是所有显示器 DPI 缩放一致,否则不生效。
最终画面:连按 Win + →,窗口从主屏第一列一路移到副屏分区,全程手不离开键盘。
高频会议:上行放会议、下行放资料,区内切窗不动鼠标
视频会议锁在顶部横条,对照资料靠快捷键翻。
- 用Rows预设:第一行整条给会议软件,第二行分两区放要对照的文档。
- 打开Toggle shortcuts for switching between windows in the current zone。
- 同区叠了两个 PDF 时,用 Win + Page Down / Win + Page Up 切上一、下一窗口。
最终画面:会议窗口横贯顶部,下方两格资料靠 Page Up/Down 来回切,手一直留在键盘上。
三套都不贴脸?打开Edit zones用 Freeform 手绘分区,或给常用布局绑定一个布局热键,之后一键整套切换;细节见 FancyZones 开发文档。
⚙️ 会用之后,试试这些
PowerToys Run + 分区摆位一条链:手动双击启动再手动拖窗的两步操作,想合成一步时用。Alt + Space 调出 PowerToys Run,输入应用名回车启动,新窗口弹出后按 Win + 方向键挪进目标分区(依赖上文的 Override Windows Snap 开关)。启动到落位不超过 3 秒,且每次位置固定。
管理员窗口拖不动:某窗口拖不进分区、还提示检测到以管理员权限运行的应用时遇到。用管理员身份启动 PowerToys 即可放行;代价是整个 PowerToys 都提权运行。不想提权就把该应用加进排除列表。
让窗口自己回家:应用关掉重开、分辨率变化后窗口乱跑。打开Move newly created windows to their last known zone与Keep windows in their zones when the screen resolution changes两个开关,重新打开的应用自动落回上次分区、改分辨率后窗口留在原区。想让窗口自由停在任意位置就别开。
排障手册:不对劲先查这里
用几天后突然不对劲?先按下面自查,多数情况不用重装。
- 首次打开弹出 JSON 解析错误("The input does not contain any JSON tokens") 原因:配置文件还没初始化。 处理:在 PowerToys 设置里点一次Edit zones,编辑器会自动生成配置目录。
- 拖窗口时看不到分区原因:开了Hold Shift key to activate zones while dragging但没按 Shift,或 FancyZones 模块没启用。 处理:按住 Shift 再拖一次;仍不行就确认托盘里 PowerToys 在运行、模块开关已打开。
- 某个窗口死活拖不进分区原因:窗口以管理员身份运行,PowerToys 没有。 处理:以管理员身份运行 PowerToys,或把该应用加入排除列表。
- 游戏、视频播放器总被吸附原因:这些应用本不该参与分区管理。 处理:在排除列表里一行一个地填入应用名,它们恢复 Windows 原生贴靠行为。
- 布局一改就异常、配置内容错乱原因:
C:\Users\用户名\AppData\Local\Microsoft\PowerToys\FancyZones下的配置数据损坏。 处理:完全退出 PowerToys,删掉 EditorParameters、CustomLayouts、AppliedLayouts 等文件,再打开一次编辑器重建。
✅ 收尾:今天先做这 3 件事
- 装好 PowerToys、打开 FancyZones,按 Win + Shift + Z 套一个 Columns 预设
- 把一个窗口拖进分区,确认边缘完全贴合
- 打开 Override Windows Snap hotkeys (Win + Arrow),用箭头键挪一次窗
明天给主屏幕画一套自定义分区、给常用布局绑一个热键;想深入原理,继续看 FancyZones 开发文档 与 模块源码目录。
延伸资源:
- 官方开发文档:doc/devdocs/modules/fancyzones.md
- FancyZones 源码目录:src/modules/fancyzones/
- PowerToys 主 README
【免费下载链接】PowerToysMicrosoft PowerToys is a collection of utilities that supercharge productivity and customization on Windows项目地址: https://gitcode.com/GitHub_Trending/po/PowerToys
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考