【WinSize v4.0 】Windows 窗口(大小/位置/置顶/绑定)快速调整小工具

功能详细使用(技术)说明

用法在一楼都说了,这里侧重技术细节,了解后可以用的更舒服一点。

快速移动窗口(QuickMoveWindow)

左侧 Alt+鼠标右键(简写做:LAlt+RButton)快速定位窗口的功能。

九宫格大部分人可以无脑快速定位,而且数量上也足够日常使用了。

自由移动窗口(FreeMoveWindow)

左侧 Alt+鼠标右键划出范围自由定位窗口的功能。

这个方法第一个好处是比传统的拖动调整窗口更快,第二个好处是更容易对齐(窗口会自动对齐到隐性的 18*12 网格上)。

任意角度拖拽都可以。这句不说总有人不知道。

轻松移动窗口(EasyMoveWindow)

就是双击 LAlt 然后弹出九宫格选择界面的功能。

如果没弹出来,可能是当前激活的窗口处于排除列表中,程序没啥可做的,就不弹出了。

界面弹出后可以用鼠标点击选择,也可以用按键选择:

Q、W、E
A、S、D
Z、X、C

也是一个九宫格,很好理解,也很好记。可以单手操作。

切换窗口置顶(WindowTopMost)

大家都能理解的功能。

不过可以将窗口置顶,也可以把那些默认置顶的窗口给取消置顶,看你怎么用了。

触发范围是当前窗口的右上角,高分屏下这个范围可能比较小,尝试并习惯一下吧。反正用的也不太多。(用的多就……熟能生巧了

切换窗口标题栏(WindowTitleBar)

这个功能主要是为了完全兼容 WinSize 3.0 的操作。因为我发现现在没几个有系统标题栏的 程序了,连系统的资源管理器、记事本都没有了。

窗口快速切换(SwitchWindow)

鼠标侧键默认是前进后退,但是我从来不用,所以用前进键来发送 Win+Tab

没有侧键就不用看了。

同程序窗口切换(SameProgramWindow)

比如打开了多个浏览器窗口,用鼠标侧键的后退键可以在它们之间切换,这在某些场景下会非常方便。

还是没有侧键……要不买个新鼠标?!

v4.6.0 开始可以自定义热键了(付费版),推荐设定一个自己根本用不上的按键,比如 RWin(右侧的 Win 键)之类。也可以使用组合键:Ctrl & Tab 但用组合键有可能产生一些预期之外的情况。

虚拟桌面切换(DesktopSwitch)

Windows 的虚拟桌面,可以用 Ctrl+Win+左/右 来快速切换。但我不喜欢,这个组合键我得两个手按。

就用 LAlt+鼠标滚轮切换,很爽,诶,还是两个手操作,反正舒服了。

窗口绑定热键(WindowBinding)
  • CapsLock+数字键,当前窗口和这个热键就绑定了,系统叫一声。
  • 下次再按这个热键,窗口就蹦出来。
  • Ctrl+CapsLock+数字键,清除这个绑定,系统也会叫一声。

没有提示音可能是你电脑静音了,也可能是你电脑的声音方案选择了无声。反正我用的系统提示音,一般情况下不应该有问题。

不知道某个按键是否绑定了窗口?你都记不住了,它绑定不绑定都等于没绑定。直接解绑它,然后绑到需要的窗口上就是了。

所以相对保险的操作方法是:先按一次解绑,然后再绑定。听起来麻烦,但其实十分无脑,越熟练越好用。

鼠标悬停自动切换(SameProgramWindow) - 2023-03-25

窗口平铺了,结果想在这个窗口输入,内容却出现在了另一个窗口,这很尴尬。

开启这个功能后,鼠标放在某个窗口上超过 0.8 秒,就会自动激活这个窗口,有点点方便哦。

这个等待时间主要是避免鼠标晃动导致窗口焦点不断变化的。

技术细节,新出现并且处于激活状态的窗口,具有“无敌效果”,鼠标不在它上面也不会激活其他窗口。比如弹出菜单,比如弹出提示,比如快捷键呼出的快速启动工具,剪切板管理工具……都属于这种情况。不过这些窗口如果失去焦点(被切换到后台)就是旧窗口了,就没有“无敌”保护了。

屏幕辅助线(ScreenGuides)

调节粗细可以用 CapsLock+滚轮,也可以用 CapsLock+[ 和 ]

颜色也可以设定,但目前要自行修改配置文件。

今日工资条(TodayEarnings)

image

在图标提示(鼠标放在 WinSize 的托盘图标上,然后显示的提示)中显示今天已经赚了多少钱(摸了多少鱼)。

功能开启后可以设置:

  • 时薪,注意,是时薪,就是每小时拿到的薪水
  • 工作时间段,支持多段时间,这样不管是午休还是更复杂的情况都能支持了

技术细节:

  • 计算精度为分钟
  • 更新精度为每 15 秒

配置说明

高级用户(爱折腾)的朋友,可以籍此进行自由定制。手动修改配置文件后需要重启应用(托盘右键菜单里有重启选项),以便重新载入配置文件

方案自定义

展开详情

在程序目录会有 Config.ini 文件,这是配置文件,自定义方案需要修改此文件。

没有配置文件

切换任意功能的开关(在托盘图标的右键菜单中),程序会自动创建此配置文件。

方案配置的基本格式

[Layout]
1 = 0|0|1920|1080
2 = 0|0|x0.5|x1

这里一共可以设定九套方案,对应九宫格的位置。

1 2 3
4 5 6
7 8 9

数值解读

| 分隔的 4 个数字,分别代表:

  • 窗口左上角的横坐标
  • 窗口左上角的纵坐标
  • 窗口的宽度
  • 窗口的高度

数值的类型

  • 直接写数字,即单位为像素的数值,一般这种方式就足够用。例如:1920
  • x 开头表示比例系数,表示当前屏幕的宽度或者高度乘以这个系数。例如:x0.5
  • 如果想用屏幕的三分之一,可以写分数,这时候不需要 。。例如:1/3
  • 上面的数值后面可以增加一个偏移量,用来微调窗口位置。例如:x0.5+8,表示在一半的基础上再加 8 像素

数值支持负数,支持超过屏幕大小,所以完全可以设定出跨越多个屏幕的效果。

多显示器

程序完全兼容多显示器,逻辑为:鼠标所在显示器作为默认显示器。

但也可以在自定义方案中添加第五个值来指定显示器,此编号和系统设置中的显示器编号对应。

默认配置

[Layout]
1 = 0|0|x0.5|x0.5
2 = 0|0|x1|x0.5
3 = x0.5|0|x0.5|x0.5
4 = 0|0|x0.5|x1
5 = x0.2|x0.2|x0.6|x0.6
6 = x0.5|0|x0.5|x1
7 = 0|x0.5|x0.5|x0.5
8 = 0|x0.5|x1|x0.5
9 = x0.5|x0.5|x0.5|x0.5

窗口排除

展开详情

对于一些窗口,我们不希望它们被改变位置(比如系统通知中心),或者修改尺寸(比如系统托盘),或者显示标题栏(比如系统桌面)……(你知道写下这些例子的时候我的血压是怎样升高的吗,生气!

我们可以将窗口加入排除列表,这样程序中的一些功能就不会对这些窗口执行了。

排除模式

托盘右键菜单——窗口排除——窗口标记模式

开启之后此项前面会有选中标记(对钩)

此时在想要排除的窗口上按下 LAlt+鼠标右键,即可标记此窗口

管理列表

可以看到上图中菜单里列出了排除条目,点击即可编辑对应条目

规则解读

进程名称或者进程路径|窗口类

  • 可以只写路径,这样这个程序的所有窗口都会被排除
  • 可以不写路径,只 |窗口类,这样符合这个类的窗口都会被排除

规则删除

在编辑规则时清空输入框并确认,即可删除此条规则

内置规则

内置规则不可修改和删除

# 通知中心,设置弹窗等
1 = ShellExperienceHost.exe
# 桌面
2 = explorer.exe|WorkerW
# 托盘
3 = explorer.exe|NotifyIconOverflowWindow
# 开始菜单等
4 = |Windows.UI.Core.CoreWindow
# 小部件
5 = Widgets.exe|WindowsDashboard

屏幕辅助线

展开详情

一些细节补充。

线宽限定

2~72 之间,应该足够用了。此处只是技术说明。

辅助线的颜色

颜色也可以修改,但是没弄设置菜单,我觉得这是低频工具,所以如有必要,自己修改配置文件吧

[Guides]
color=FF6666

就是粉色辅助线了。值用六位 hex 颜色值,不要写 # 号。理论上支持颜色名称,但是在尝试中可能遇到报错,所以不推荐。

流畅度

50ms 计算一次位置,确实不是很跟手,但是用这个的情况大概也不很在乎这个

快捷键

除了 CapsLock+滚轮,CapsLock+[ 和 CapsLock+] 也可以调整线宽

快捷键修改

如无必要,请勿修改

默认按键设计挺合理的,改用其他按键可能出现各种不可预期的情况

展开详情

以下为默认设定:

  • 主功能按键(mainButton): “LAlt”
  • 鼠标按键(mouseButton): “RButton”
  • 修饰按键(modifyButton): “CapsLock”
  • 快速调用对应方案的快捷键(layoutShortKeys): “QWEASDZXC”
  • 用以窗口绑定的快捷键(bindingShortKeys): “123456789”

在设置按键的弹窗中也有建议使用的按键,但即便如此,依然可能有些啼笑皆非的尴尬情况,比如:

我设置了 LWin 作为主功能按键,各方面都好,但是双击弹不出来选择界面。原因是——并未评级按键原有功能,所以第一下弹出了开始菜单,当前焦点在开始菜单上,第二下唤起本程序功能,但程序检测激活窗口是开始菜单,这个窗口在排除列表中,不作响应。