如何在 Windows 10 中禁用粘角

djv*_*djv 138 mouse multiple-monitors windows-10

看来微软已经试图解决这个问题多显示器和屏幕角落

在 Windows 7 中,显示器之间没有边界,鼠标可以在我的 3 台显示器之间的屏幕顶部自由移动,前提是我在显示设置中将它们的高度设置为相等。Windows 8 引入了粘角。看到这个问题

Windows 10 也有粘角。每个显示器的顶角都有几个像素,鼠标无法跨越到另一个显示器上。为了进入下一个显示,必须向下移动光标以避免该区域。

该图大致显示了在 Windows 10 中不允许鼠标移动但在 Windows 7 中允许的区域。

在此处输入图片说明

就我个人而言,我对在屏幕顶部不受限制的鼠标移动没有任何问题 - 我习惯了“瞄准”x,以及不受限制的光标移动的便利。像所有想在 W8 中禁用它的人一样,我想知道是否有办法在 W10 中禁用它。

编辑以解决可能的重复:

尽管该问题与此问题中的问题相同,但解决 W8 中涉及编辑注册表项的问题的解决方案MouseCornerClipLength在 W10 中不起作用,因为 W10 中不存在该注册表项。添加该键并设置该值也不起作用。我搜索了整个注册表,但在其他位置找不到它。W8 解决方案中引用的节点中的其他 W10 密钥都不是明显的替代品。

编辑以解决评论中的可能解决方案

适用于 Windows 8.1 的Harrymc 的建议 1建议 2在 Windows 10 中不起作用。

har*_*ymc 44

线程 如何在Windows 10禁用粘的角落? 来自 answers.microsoft.com 处理同样的问题:

将鼠标从左侧监视器移动到右侧监视器的左上角时,6 像素角将抓住您的鼠标。

我在 Windows 8.1 中遇到了类似的问题,将注册表中的 MouseCornerClipLength 从 6 更改为 0,并禁用任务栏和开始菜单属性中的角导航有帮助。

无论如何,在 Win10 中,我找不到 MouseCornerClipLength,完全禁用角导航,添加相同的注册表项也无济于事。

2015 年 6 月 4 日,一位名叫 Vijay B 的 Microsoft 支持工程师的回答是:

我们知道这个问题,目前正在调查中。请继续关注,当有更多信息可用时,我们将更新此线程。

如果遇到此问题的任何其他海报尚未通过 Windows 反馈应用程序提交,请提交。这篇文章 http://answers.microsoft.com/en-us/insider/forum/insider_apps-insider_feedback/how-to-share-feedback-on-windows-10-technical/5e501781-a580-43e3-8926-40ae19343805解释使用 Windows 反馈应用程序。

似乎您目前唯一的选择是等待未来的改进,或者等待某些黑客提出正确的黑客攻击。将您的声音添加到Windows 反馈应用程序可能会有所帮助。

[ EDIT1 ]据说开源应用程序Non Stick Mouse在多显示器的情况下提供了解决方案。开发商表示:

它的作用是在移动窗口时将鼠标跳到粘着的角落以及屏幕边缘。因此,它允许通过屏幕拖动窗口而不会让您的鼠标被 Snap Assist 劫持。
[...]
此应用程序不会读取或写入任何驱动器,也不会访问注册表或连接到 Internet。

警告:在评论中已经指出,virustotal 在最新版本的“非粘鼠标”中发现了恶意软件。

[ EDIT2 ]

我找到了 一个为 Windows 10 提供解决方案的 来源(我现在无法测试):

  1. 禁用 Snap
    In Settings > System > Multitasking,将 Snap 设置为 Off。

  2. 注册表修改
    创建并执行以下.reg文件:

     Windows Registry Editor Version 5.00
    
     [HKEY_CURRENT_USER\Control Panel\Desktop]
     "MouseMonitorEscapeSpeed"=dword:00000001
    
     [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ImmersiveShell\EdgeUI]
     "MouseMonitorEscapeSpeed"=-
    
    Run Code Online (Sandbox Code Playgroud)

[ EDIT3 ] Microsoft 可能最终在其最新版本中禁用了此功能。

  • 在 2017 年仍然是一个问题 (17认同)
  • 都2019年了,依旧没有起色。 (13认同)
  • 在 2018 年底仍然是一个问题,他们永远不会解决它。 (7认同)
  • 将近三个月后。刚刚更新到 Windows 10,这仍然是一个问题。感谢您为我指明投诉的方向。 (4认同)
  • 2020年签到,仍然没有修复 (4认同)
  • 你好 2021,粘角仍然是一件事...... (3认同)
  • -1,因为它不起作用,而且赞成票分数非常具有误导性。 Dale 的 MouseUnSnag 解决方案效果很好。 (3认同)
  • 请,如果您在反馈应用程序中提供反馈,要么简单地投票给众多现有帖子中得票最多的一个,而不是(或至少另外)创建另一个帖子。或者添加一个新帖子并对所有现有帖子进行投票(这就是我所做的)。除了充分提高认识之外,我认为没有其他解决问题的方法。 (2认同)
  • 2023年,问题依然存在。我们需要一点耐心来完成 Windows 整整十年的无视我们的地狱 <3 (2认同)

Jon*_*ton 27

我开发了一个应用程序来处理这个问题,因为微软显然有意忽略它。你可以从这里得到它:http : //www.jawfin.net/nsm

  • 这个应用程序绝对棒极了!谢谢你! PS:如果网站因任何原因关闭,您可以在 https://github.com/Jawfin/nsm 找到源代码。 (3认同)

Nat*_*Nat 7

部分解决方案

  • 禁用“捕捉”
  • 不能解决整个问题,但会使问题不那么严重。
  • 易于操作:在 Windows 10 中禁用“Snap”。如果链接断开,请参阅下文了解详情。
  • 如果您真的愿意,您可以为完整的解决方案实施变通方法,但这需要大量工作,因为您实际上需要编写一个程序来执行此操作。详情见本帖末尾。

背景

我有一个 6 显示器设置:

                Monitors
   Top row:  [#1] [#2] [#3]
Bottom row:  [#4] [#5] [#6]   (eye-level; #5 is main display)
Run Code Online (Sandbox Code Playgroud)

每当我将窗口从一台显示器移动到另一台显示器时,Windows 10 都会检查我是否想要最大化它。这个称为“Snap”的功能似乎被窃听了,因为它经常阻止我将窗口从一个显示器移动到另一个显示器。我在对此感到沮丧时发现了这个超级用户问题。

禁用 Snap 真的对我有帮助。这也会自动禁用Aero Shake,我认为这是一个奖励。

程序

要禁用“捕捉”和“航空摇晃”:

  1. 去:
    • “控制面板”
    • -->“所有控制面板项目”
    • -->“轻松访问中心”
    • --> “使鼠标更易于使用”。
  2. 勾选“防止窗口移动到屏幕边缘时自动排列”。
  3. 单击“确定”或“应用”。

结果

  • 阻止将窗口从一个屏幕移动到另一个屏幕的“捕捉”现在已被禁用。窗户可以自由移动。
  • “Aero Shake”,当一个窗口被震动时会导致所有窗口最小化,现在被禁用。
  • “粘角”会导致类似的问题,但只是在角落(而不是所有边界),仍然是一个问题。据我所知,目前 (2015-08-18) 没有办法禁用粘角或进一步减轻它引起的问题。

解决方法

粘滞角有一种解决方法,但这并不有趣。要点是您制作了一个 WPF 程序,在每个显示器的角落放置小黑色方块,然后当程序检测到鼠标在这些方块上移动时,它会按预期将鼠标跳到下一个屏幕。从技术上讲,您可能希望调整“正方形”的形状以匹配粘角实际影响的任何区域(可能是 L 形形状?)。

基本上:

  1. 下载 Visual Studio,例如 Visual Studio 2015 社区。
  2. 制作一个 WPF 项目。
  3. 让 WPF 应用程序Window在每个页面上制作一个。对于每个Window

                    Monitors
       Top row:  [#1] [#2] [#3]
    Bottom row:  [#4] [#5] [#6]   (eye-level; #5 is main display)
    
    Run Code Online (Sandbox Code Playgroud)
  4. 写入HandleThisByMovingTheMouseToTheCorrectScreen()以将鼠标移动到适当的位置,从而避免粘滞角捕获它。

  5. 如果你想要花哨,而不是 ,为每个角Border制作一个Grid单独Canvas的(而不是Border,它也将覆盖每个屏幕上不是角的边缘)。

  • 我实际上确实为此编写了一个程序。非常快速和肮脏,我什至硬编码了我的角点 - 但如果需要它可以很友好!我只是张贴,但要注意上述解决方法需要答案提供的更多工作。如果您只是将鼠标移动到相邻显示器的下一个角落,则粘性角落也会拾取它 - 您必须将其移到远离角落的当前显示器(8 个像素) - 然后将其移动到下一个显示器上。您还必须休眠 UI 线程以阻止 Win10 重新抓取它,即使在那之后-.- (2认同)

小智 6

本着 Jonathan Barton 的上述贡献的精神,我开发了一个小的 Windows C# 命令行应用程序来处理这个问题,并允许鼠标​​在多个显示器上平滑移动,并在最左侧和最右侧之间环绕监视器。请注意,该程序不需要“启发式”来确定光标何时靠近屏幕边缘,因此光标非常平滑地穿过边缘。

  • MouseUnSnag - GitHub - 您可以从源代码编译它,或者有一个作为 GitHub“发布”提供的可执行文件。

MouseUnSnag还解决了这个相关的superuser.com问题,即光标卡在不同高度的显示器边缘:


Aro*_*ter -1

这是 Windows 8 的一项功能,称为粘滞角 (IIRC)。有人声称通过更改注册表禁用了它:

\n\n
    \n
  1. 在注册表中,搜索:MouseCornerClipLength
  2. \n
  3. 将值设置为 0(从 6 开始)
  4. \n
  5. 重复(有多个键具有此名称,I\xe2\x80\x99m 不确定哪一个是必需的)
  6. \n
  7. 重新开始
  8. \n
\n\n

请注意,我目前无法尝试此操作,因此如果这不能解决您的问题,请告诉我,我将删除我的答案。

\n

  • 看起来很有希望,但它在 Windows 10 中不起作用。请参阅我的编辑。 (7认同)

归档时间:

查看次数:

137255 次

最近记录:

4 年 前