【问题标题】:Restrict mouse movement over a specified window handle限制鼠标在指定窗口句柄上的移动
【发布时间】:2019-06-16 21:58:27
【问题描述】:

我希望在 Windows 上模拟 Safari 的信息亭模式。 OSX 无法与我的输入硬件一起使用,而且 Chrome 的 GPU 加速对于我正在使用的机器来说太慢了。

[到目前为止]唯一可行的解​​决方案是运行 Safari 并发送 F11(全屏)击键,但在鼠标到达屏幕顶部像素时阻止 URL 栏扩展。

我已经看过,但似乎找不到任何好的解决方案,想知道我是否可以限制光标移动到达屏幕的顶部像素?

如果有人有其他解决方案,那就太好了!

【问题讨论】:

    标签: windows winapi safari mouse


    【解决方案1】:

    您可以使用ClipCursor 函数来执行此操作。

    将光标限制在屏幕上的一个矩形区域。如果后续光标位置(由SetCursorPos函数或鼠标设置)位于矩形之外,系统会自动调整位置,使光标保持在矩形区域内。

    【讨论】:

    • 查看文档后我想知道,它是在应用程序之间工作还是需要注入代码才能使其在浏览器上工作?
    • @rasmus 我怀疑你是对的,需要 DLL 注入
    • 我快气死了,我找了这么久都没碰到这个,你太棒了! (我什至都​​准备好得不到合适的答案)
    • 另外,不需要注入 DLL。 :)
    【解决方案2】:

    您可以轮询光标位置并使用计时器进行更正,但这并不理想。你也可以用一个透明的最上面的窗口盖住顶栏。这样,输入将永远不会到达顶部栏。

    编辑:如果 Internet Explorer 是一个选项,您可以使用 COM 对象将您需要的内容嵌入到自定义应用程序中。其他浏览器可能有类似的 API,但我不熟悉。

    【讨论】:

      猜你喜欢
      • 2011-07-25
      • 1970-01-01
      • 2010-09-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-28
      相关资源
      最近更新 更多