一个按键把窗口钉在最上面,PinWin 窗口置顶工具上手不到五分钟
【免费下载链接】pinwin.NET clone of DeskPins software项目地址: https://gitcode.com/gh_mirrors/pi/pinwin
写周报的时候,我一边翻着浏览器里的数据网页,一边往文档里填数字,每抄一行就要切一次窗口。来回切了十几趟之后,我实在忍不住了——窗口置顶工具 PinWin 就是在这时候救了我的场。它是个用 .NET 写的小软件,干的事情只有一件:把任意第三方窗口钉在屏幕最顶层,让"边看边写"变成"一直看得见"。
先说清楚:窗口置顶到底帮你省了什么
Windows 自己其实没有"任意窗口保持最前"这个开关。平时你想让两个窗口同时可见,只能手动把它们拖成并排,或者靠系统自带的分屏功能凑合。遇到下面这些情况,传统做法就更麻烦了:
| 需求 | 没有置顶工具时 | 用 PinWin 之后 |
|---|---|---|
| 看数据写文档 | 每看一眼就切一次窗口 | 数据窗口一直浮在最上层 |
| 边看视频边聊天 | 视频一遮挡就看不到聊天框 | 两个窗口各干各的,互不打扰 |
| 监控进度做别的事 | 进度条被挡住,错过关键节点 | 进度窗口始终可见 |
PinWin 解决的就是这个"同时盯住多个窗口"的痛。它不改变窗口内容,只是让某个窗口在桌面上永远排在第一位,直到你主动放开它。
我第一次安装时踩过的坑
PinWin 的安装比我预想中简单。官方通过install.iss(Inno Setup 脚本)打包安装程序,也可以直接使用预编译的二进制文件。如果偏好从源码自己构建,先拉取仓库:
git clone https://gitcode.com/gh_mirrors/pi/pinwin运行安装程序后基本一路默认即可,安装目录保持默认就行。要注意两点,都是我自己踩过的:
- 需要 .NET Framework 4.6.2 或更高版本,装完系统更新一般都有,没有的话先去微软官网补上。
- 安装向导里有个"开机自启"选项,勾不勾看你需求。我建议先不勾,用顺了再开,免得后台常驻一个用不到的程序。
安装完成后 PinWin 不会弹个大窗口,它安静地躲在系统托盘里。第一次启动时我一度以为没装上,直到看到托盘图标才反应过来——这个应用的设计哲学就是"不打扰"。
三个动作,把窗口"钉"在屏幕上
PinWin 的核心操作就三个,记住它们就够了:
第一步:按 Ctrl+F11,选中要置顶的窗口。按下快捷键后,屏幕会进入一个"取景"状态,鼠标移到哪个窗口上,点一下,这个窗口就立即置顶,标题栏上会出现一个图钉图标,提示你它已经被钉住了。这个图钉是活的——你拖动窗口,它会跟着走;窗口被最小化或关闭,它会自动消失,不用你手动清理。
第二步:按 Ctrl+F12,钉住光标正下方的窗口。这个快捷键省掉一次点击,鼠标放在哪个窗口上,直接按快捷键就完成置顶。我经常用它来钉计算器和参考资料,因为这两样东西我从来不需要"挑",光标在哪就钉哪。
第三步:想解除置顶,点一下那个图钉。或者打开主界面,在置顶窗口列表里选中条目,一键取消。列表里能看到所有被钉住的窗口,随时批量管理。想要随时唤回主界面,双击托盘图标就行。
如果想换一套快捷键,在设置界面里对着输入框按下新组合键即可,改完立即生效,不用重启。快捷键相关的配置和热键注册逻辑在PinWin/BusinessLayer/ApplicationSettings.cs和PinWin/Controls/TrayAppForm.cs里。
双屏和缩放,这些边角料我也替你先试了
我是双显示器用户,所以对多屏支持格外在意。PinWin 官方说明支持多显示器(已验证双屏扩展模式),也支持高 DPI 缩放(已验证 100%–200%)。也就是说,副屏放一个全屏视频,主屏写文档,视频也能稳稳钉在最上层。
不过有个已知限制要提醒你:如果两块屏幕的分辨率缩放比例不一样(比如一块 100%、一块 150%),截屏选窗口时可能出现画面只覆盖部分屏幕的情况。解决办法很直接——让所有显示器用相同的缩放比例。这个细节在项目 README 里有说明。
我遇到过的几个问题,和它们的解法
用了这段时间,我碰到过三类问题,顺手把解法记在这里:
快捷键按了没反应。多半是和其他软件的全局快捷键撞车了,比如某些录屏软件默认占用了 Ctrl+F12。去 PinWin 设置里换一组键就行,换成你顺手的组合。
想钉商店应用(UWP)里的窗口。目前还做不到,项目官方说明 UWP 暂不支持,图钉会落在最小化按钮上方。如果你主要用 UWP 应用,可以留意项目后续更新,具体支持情况以官方文档为准。
图钉图标不见了。先看被钉的窗口是不是被最小化了——图钉会跟着窗口一起隐藏。窗口最小化时置顶状态仍在,恢复窗口后图钉也会回来。
它适合谁,也提醒一下不适合谁
如果你经常"盯着一个窗口做另一件事"——写论文查资料、写代码看文档、看教程敲练习、盯下载进度条,那 PinWin 很对你的胃口。它几乎不占资源,也没有复杂界面,装完就能用。
反过来,如果你只是偶尔需要分屏,那系统自带的窗口排列功能也许就够用了,不必专门装一个常驻工具。另外作者自己也提到,PinWin 最初的设计目标是提升单显示器下的效率,多显示器场景下它的价值会打折扣——这句话我实测后深有体会,它最适合的场景就是"一个屏幕上两件事"。
想深入了解它的工作原理,源码就是最好的说明书:窗口句柄查找与置顶逻辑在PinWin/WinApi/目录,图钉跟窗、自动回收在PinWin/Controls/PinForm.cs,而界面与设置入口在PinWin/MainForm.cs和PinWin/SettingsForm.cs。对于想学习 Win32 窗口管理的人来说,它还是个不错的入门参考。
下次再遇到"窗口来回切到崩溃"的时刻,记得试试这个用一次就回不去的小工具。
【免费下载链接】pinwin.NET clone of DeskPins software项目地址: https://gitcode.com/gh_mirrors/pi/pinwin
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考