Tag: multi touch

如何在Surface 4 Pro中禁用WPF Tablet支持?

我inheritance了一个针对Net 3.5的WPF应用程序,我必须在Surface Pro 4(I5)中安装它。 该应用程序悬挂在不同的点上,我观察到动画有时永远不会触发已完成的事件(可能它们最终会在某个时刻结束,但不会在Duration属性中表示)。 作为一个转机,我尝试为WPF应用程序禁用RealTimeStylus,但经过几次试验后,我注意到尽管执行了DisableWPFTabletSupport方法并完成了(我在DisableWPFTabletSupport方法中添加了日志代码,并且Surface Pro 4中删除了四个设备),可能是WPF平板电脑支持在我的应用程序中仍处于活动状态,因为应用程序会不时地继续挂起并继续捕获屏幕触摸。 因此,我发现能够在Surface 4 Pro中成功运行针对Net 3.5的WPF应用程序的唯一方法是使用Windows设备管理器禁用人机界面中的所有触摸屏相关设备。 有谁知道我如何在Surface 4 Pro中禁用WPF平板电脑支持? 注意。 尽管在禁用和启用触摸屏驱动程序时有所说,但禁用“符合HID标准的触摸屏设备”是不够的:直到“英特尔(R)精确触摸设备”未被禁用,触摸屏仍保持激活且大多数WPF应用程序将失败。

在C#/ .NET中为PostMessage()创建WM_TOUCH消息

(有关背景信息,请参阅为SendMessage()编写WM_TOUCH消息,Kinect作为多点触控设备 ,它与我的问题基本相同,但其接受的答案实际上没有回答问题。棘手的一点是没有填写TOUCHINPUT结构,但制作有效的触摸输入句柄。) 我想以令人讨厌的hackish方式模拟多点触摸输入设备的存在,其概括如下: while (true) { choose locations etc. for simulated touches; PostMessage(GetForegroundWindow(), WM_TOUCH, nTouches, …); } 棘手的一点就是标有“……”的空间。 从WM_TOUCH消息的消费者的角度来看,MSDN文档不出所料地写道, WM_TOUCH消息的lParam是 触摸输入句柄,可用于调用GetTouchInputInfo以检索有关与此消息关联的触摸点的详细信息。 我可以轻松地制作,例如,一个TOUCHINPUT结构数组,这是GetTouchInputInfo为您提供的。 但这似乎与“触摸输入手柄”完全不同。 (例如,触摸输入句柄需要传递给CloseTouchInputHandle ,据称PostMessage或SendMessage将执行此操作。) 用户代码是否可以(正式或非正式!)生成可以传递给PostMessage的有效触摸输入句柄? 如果是这样,怎么样?

在GMap.net中缩放和平移

我正在尝试使用WPF内置事件启用GMap.Net控件多点触控,但我没有成功。 我发现了一系列关于多点触控的文章,就像这个和这个一样。 在所有这些中, ManipulationContainer是一个canvas和可移动控件放在它上面,但在GMap问题中, ManipulationContainer是GMapControl并且无法控制它。 我如何使用e.ManipulationDelta数据进行缩放和移动? GMapControl具有Zoom属性,通过增加或减少它,您可以放大或缩小。

C#使用Kinect模拟多点触控

我有一个Kinect应用程序,我可以生成1-4个不同的屏幕点(左手/右手最多2人),我希望能够将每个Point发送到应用程序,焦点作为多点触摸消息。 我目前正在使用SendInput发送鼠标移动,鼠标按下和鼠标按下消息,但是AFAIK,它不支持WM_TOUCH消息。 有谁知道在C#中发送多点触控消息的简单方法? 作为测试,我希望能够在MS Paint中使用Kinect,并用双手绘画(以及风的所有颜色)