0

轻拂是可以用触控笔或手指触发的手势,以在 Windows 中的应用程序中后退、前进、向下或向上滚动。

http://windows.microsoft.com/en-us/windows7/what-are-flicks

在我的网络应用程序中,我使用 HTML5 画布来捕获要绘制的鼠标事件。在 Microsoft Surface(启用了轻弹)中,由于轻弹,mousedown 事件被延迟,并且几个 mousemoves 被忽略并且不会传输到 Web 应用程序。此外,有时,用户会因为轻弹动作而后退/前进/向上/向下滚动。

这是此问题的重现/描述/屏幕截图: https ://github.com/jogonzal/MinimalisticFlickDelayRepro

4

1 回答 1

0

修复方法是禁用 Chrome 或 Firefox 中的轻弹手势 - 这意味着Firefox/Chrome windows 应用程序中的代码更改为:

  • 完全关闭它(首选,这是 IE 和 Edge 所做的)
  • 允许开发者通过 CSS/Javascript 关闭它

选项 1使用 TABLET_DISABLE_FLICKS (推荐,github上有很多例子,IE和Edge就是这样做的)

(C++):按本文所述禁用轻弹: https ://msdn.microsoft.com/en-us/library/dd562171(v=VS.85).aspx 代码示例 https://github.com/jonathanhook/ Waves/blob/bc5a3c9a8a2c8574b28174e25650753237bc8cd2/Source/MultiTouchEvents/WMTouchEventSource.cpp

(C#):代码示例 https://github.com/leowangzi/DanielLib/blob/6aaae88bd9ec9ae91da35fa3bdcd280f2c701e64/DanielLib.TouchAppTemplate/Touchtech.Surface.Community/TabletUtil.cs

选项 2响应 WM_TABLET_QUERY_SYSTEM_GESTURE_STATUS

https://msdn.microsoft.com/en-us/library/windows/desktop/ms699430(v=vs.85).aspx

于 2016-04-29T21:44:32.763 回答