是否可以将 Windows 10 的不可见窗口的边框变为可见?

Ele*_*ios 21 window desktop-customization visual-styles dwm windows-10

设想


这里给不知道下信息的小伙伴简单介绍一下:

新的Windows 10的平面窗口样式使用与以前的Windows版本不同的窗口边框机制,这以一种可怕的方式影响了窗口方面及其使用,即窗口大小调整和窗口定位的含义。

默认情况下,Windows 10具有 1 像素。可见边框,注意“可见”这个词,因为实际情况是边框宽度更大,简直就是一个不可见的边框,也就是Windows 10使用它的边框图片资源只填充了1px。窗口边框边界的实际宽度,无论边框宽度有多大,您始终只会看到1 px。边界,在这里您可以自己想象可能导致的问题。

Windows 10 中,与以前的 Windows 版本一样,您可以执行一些注册表更改以增加窗口边框宽度,这是我的意思的一个示例,对于Windows 8

在此处输入图片说明

在此处输入图片说明

但是,对于Windows 10的(不良设计)“规则” ,如果用户尝试在此操作系统中重现相同的注册表技巧,则窗口方面不会发生任何变化,您最终会得到一个 geater 边框,是的,但请记住只有 1 px。那个边框是可见的,所以你最终会得到一个该死的 1 像素。带有大而烦人的不可见调整大小手柄的可见边框。

微软的这个糟糕的、糟糕的、不友好的和可怕的设计决定是一个事实,也是一个存在很多喜欢这个 1 px 的用户的事实。边界方面,他们的意见是可重复的,但是,老实说,那些用户只在操作系统方面修复他们的意见,他们没有注意到 1 px 的错误行为。边框可能会给它们造成影响,这会破坏最终用户的工作效率和舒适度,即使只是尝试移动窗口或尝试区分哪个窗口与其他窗口这样简单的事情,因为所有窗口的边框都是不可见的。

此问题已在与Windows 10个性化相关的“所有”Internet 论坛上进行了讨论,以下是Microsoft 社区线程上的一个简单但永无止境的讨论主题,供您参考:

(如您所见,该主题已在 2 年前创建,有 +14.000 次查看、+100 次回复、+270 次推荐,但Microsoft团队的零回答和零修复或责任,是的,非常恶心。)

问题


那个该死的和不可定制的压力?1 像素。边界,所有问题和最糟糕的噩梦都是从Windows 10开始的。

我一直喜欢在以前的 Windows 版本中使用一个名为Sizer的程序,该应用程序可以让您只需单击一下即可将任何窗口定位到任何可见窗口的可自定义预先建立的位置,但是这种节省时间的窗口组织应用程序不能在Windows 10 中按预期工作,因为该死的不可见边框,因为在计算窗口位置时不可见边框的大小将是总和,这被转换为桌面上定位窗口和桌面边距之间的令人讨厌的空白空间...

对于熟悉Sizer 的人来说,这是一张图片,可以让您理解我的意思,位置之间的空白空间(这是该死的Windows 10隐形边框的大小): 在此处输入图片说明

所以,出于我和我的原因,有 1 个可见像素。边框是我每天使用Windows 10都面临的一个非常大的问题,我真的......非常厌倦。

我不会回滚到以前的Windows版本,因为我通过使用Windows 10操作系统及其性能优势获得了更多,但是 1 px。边框是这个操作系统最可怕的缺点,我想通过像以前的Windows版本那样拥有真正的窗口边框感到高兴,这意味着边框图像填充整个边框宽度(就像我上面发布的比较图像问题介绍),我不想有8像素。其中边框只有 1 px。是可见的,这太疯狂了,我不知道开发人员到底在想什么。谁设计了Windows 10,如果你给你自己的操作系统取名为“Windows”,那么尝试设计和实现一个真正的“窗口”外观和行为,然后避免为上帝之母实现不可见的窗口大小调整手柄!!。


此时,知道在Windows 10中真正的边框宽度是 8 px,但只有 1 px。显示出来,其余的边界只是......不可见,

我想寻求一种可能的解决方案来在Windows 10中将边框变为可见,我的意思是像以前的Windows版本一样具有真正的窗口边框,边框图像资源填充整个边框宽度,而不是不可见的边框。

我知道这个问题可能需要高级知识、进一步调查和个人测试,因为谷歌的结果页面不会向任何人展示如何解决这个问题,所有人都在谈论这个 1 px。边界问题,但似乎没有人知道解决方案,更糟糕的是,微软似乎没有听取任何人的意见,也没有听取“窗口”的合理设计。

我必须说我有一个名为Windows Style Builder(适用于Windows 10版本)的应用程序,它能够打开一个.msstyle主题文件来编辑主题中包含的任何图像资源,该程序是我找到的唯一希望并使边框图像资源更大以填充整个实际边框宽度,但是我试图使Aero主题中使用的所有边框图像资源更大,但Windows 10仍然显示 1 像素。边框,好像不管用主题显示边框的边框图片资源有多大,似乎显示的边框宽度不是由主题本身控制的(我真的不知道),所以我的噩梦是认为似乎是一个具有逆向工程知识的人来创建一种自制补丁来应用谁知道可能需要哪些可执行文件或 Windows 资源来解决Windows 10 的这个恼人的问题,我真的希望这件事可以更友好地解决道路。

我不知道还有什么需要自己去调查和尝试。

要求


我声称的唯一必要条件是,可能的解决方案不应暗示使用 3rd 方主题,例如Aerolite,这是因为我已经在使用 3rd 方较暗的 Windows 主题,因此如果我更改为其他(浅色)主题那么我最终会遇到一个新问题。

出于这个原因,请真正考虑到我的问题是“如何使 Windows 10 的不可见窗口的边框可见”,而不是“我可以安装哪个 3rd 方主题以查看 Windows 10 中的窗口边框? ”。

也请尽量不要将问题集中在Sizer替代品上,这些替代品受到我的欢迎和赞赏,当然,真的,但真正的问题是Windows 10的不可见边框,这不仅会影响Sizer,也是一个问题这将影响操作系统的整体使用


更新

下面的这些段落只是为了论证为什么不能以任何方式将Stardock 的 WindowBlinds描述为解决方案。您可以忽略以下所有这些词。

显然Stardock 的 WindowBlinds将是一个很好的个性化程序,适用于其他类型的目的,或者对于那些使用它感觉良好的人来说,但不仅仅是为了使Windows 10 中的窗口边框可见,原因如下:

(请注意,我的本意不是诋毁 Stardock 的产品或开发团队,我多年前买了Fences,它是一个非常专业的应用程序,我认为每个人都必须拥有桌面图标组织,我真的不能没有Fences,所以我很欣赏 Stardock 的工作。)

  • 该程序使用了一种在常见的 Windows 主题中似乎没有的特殊技术,因为它不应用主题文件,也不涉及包含我们所知的主题资源和设置的.msstyles文件。

  • 我上面的肯定是有争议的,因为在文件和注册表监视之后我没有发现它们是如何向窗口“添加”边框的,该程序没有制作任何与 Windows 主题相关的注册表项或 Windows 主题文件/目录相关的内容,所以我怀疑该程序必须在某些UX 主题Win32 API上使用 API 挂钩技术来更改执行时的资源,然后需要对 WinAPI 函数的调用进行高级监视以确认我的怀疑。

  • 这是一个应用程序,它意味着应用自定义WindowBlinds主题来向窗口“添加”边框,并且消耗大量资源。

  • 该程序更改了任务栏样式和 winstart 菜单,这会影响其行为,似乎最终用户无法决定禁用这些功能(我不确定),因此WindowBlinds的使用限制了您无法使用StartIsBack++ 之类的程序获得一个像样的 winstart 菜单(我测试了它,它打破了StartIsBack++),另一方面,可能[Stardock 的 Windowblinds]应该支持他们的Stardock 的 Start10产品,只是为那些感兴趣的人提一下,但在我看来它有没有比StartIsBack++更好的了。

  • WindowBlinds确实不会使窗口边框可见,它似乎要做的是减少原始窗口矩形以打印假边框,这会产生更高的非客户端矩形或“不可见的窗口边框矩形”比Windows 10默认值更烦人,这完全不可能(甚至更多)使用Sizer等程序来管理窗口位置,因为这是应用WindowBlinds主题后真实的、修改过的窗口矩形:

在此处输入图片说明

  • 我们可以继续说它在窗口上添加了一个(不需要的)阴影,即使您禁用了控制面板设置中的所有效果选项,这是因为正如我在开头提到的,这个程序似乎没有使用常见的 Windows 主题,所以影响 Window 主题的控制面板选项不会影响WindowBlinds主题,相反,我怀疑该程序使用 API 挂钩技术来“创建”主题环境(和假边框)。WindowsBlinds有自己的效果配置。

  • 作为最后一个缺点,WindowBlinds是一款付费产品,它是一个“完整”的个性化应用程序,我的意思是,一个人不应该仅仅为了尝试在一个Windows 主题。

小智 5

这可能不完全是您正在寻找的内容,但它可能会对您有所帮助。如果进入系统或右键单击“此计算机”进入属性,然后在左侧单击“高级系统设置”,单击“高级”选项卡下的“性能”组框中的“设置”按钮,然后将机器设置为“调整为最佳性能”。完成此操作后,单击“确定”并让设置生效。然后尝试拖动窗口,您将看到您正在寻找的“不可见”边框框存在于早期版本的窗口中。也许你可以利用这一点?


gue*_*-vm 5

我有一个猜想:所有自定义主题都是基于编辑内置的aero.msstylesaerolite.msstyles,位于%windir%\Resources\Themes\aero. aero带有固定1px宽的边框,而陨石拥有1-8px边界,通过配置注册表WSB(9px以上保持不可见)。到目前为止,还没有关于如何从头构建 msstyles 的公共文档。因此,您的主题是否具有可配置的可见边框取决于基于哪个默认 msstyles。

建议您到Virtual Customs寻求专业帮助。

  • 我放弃。我已经用 WSB 对多个 msstyles 文件进行了试验,但无济于事。最终屏幕已经闪烁了几次。这不是新手可以解决的。 (2认同)