加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows-7 – WM_TOUCH不会立即发送触地事件

发布时间:2020-12-14 02:19:23 所属栏目:Windows 来源:网络整理
导读:我正在使用触摸屏并使用 Windows 7内置驱动程序(因为它从未促使我安装任何).它工作正常,除了一个小问题.当我触摸屏幕时,它不会发送WM_LBUTTONDOWN,直到我将手指从屏幕上移开.它似乎这样做是为了确定我是否打算按住以模拟WM_RBUTTONDOWN. (另外,我试图禁用按
我正在使用触摸屏并使用 Windows 7内置驱动程序(因为它从未促使我安装任何).它工作正常,除了一个小问题.当我触摸屏幕时,它不会发送WM_LBUTTONDOWN,直到我将手指从屏幕上移开.它似乎这样做是为了确定我是否打算按住以模拟WM_RBUTTONDOWN. (另外,我试图禁用按住模拟手势,但它在实践中从不禁用.)

所以我想我会收到WM_TOUCH消息.我发现WM_TOUCH(0x240)也没有发送到我的窗口,直到我的手指离开屏幕.我有点认为完全违背了WM_TOUCH的目的.

在注册接收WM_TOUCH消息之前和之后,我在触摸屏幕后立即收到三条消息:

1. Send: 0x02CC (undocumented tablet messages)
2. Post: 0x011B (undocumented)
3. Send: 0x011A (WM_GESTURENOTIFY)

0x011A是WM_GESTURENOTIFY,我的代码要响应(也许我没有正确响应?).我回复标准响应(使用MS的示例代码)来接收完整通知.

另一件事,我在注册触摸消息时开始获取WM_TOUCH,但我仍然继续获取WM_GESTURENOTIFY消息.根据MS文档,一旦我注册获得WM_TOUCH,我就不再获得手势消息了.

如果有人能告诉我如何立即获得WM_TOUCH消息(例如,当我收到WM_GESTURENOTIFY消息时),而不是在我的手指离开触摸屏之后,我会非常感激.

解决方法

查看有关触摸事件的本教程:

http://msdn.microsoft.com/en-us/gg464991

你想要使用的是RegisterTouchWindow函数,如下:

RegisterTouchWindow(handle,0);

Windows现在将WM_TOUCH消息而不是WM_GESTURE消息发送到您的窗口.请记住,您必须针对Windows SDK 7.0或更高版本进行编译才能实现此目的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读