1

我目前正在从事 WPF 项目,该项目涉及为 Windows XP 嵌入式创建触摸屏应用程序。由于 Windows XP 不是为触摸交互而构建的,因此开发这些应用程序存在一些问题。

一个例子是点击: 在 Windows XP 上点击是鼠标按下和鼠标向上的事件,但是如果你使用手指而不是鼠标,你可能会得到拖动动作而不是点击,就像当你按下鼠标时你的手指可能从初始位置稍微向一侧移动,您将获得拖动而不是单击。这只是您在为 Windows XP 开发触摸屏应用程序时遇到的问题的一个示例。

如果有人一直在为 Windows XP 开发 WPF 触摸屏应用程序,您能否分享一些知识并指出您遇到的陷阱,或者如果您知道有关此主题的任何资源,请您分享一下。

4

2 回答 2

2

我有一个 WPF 触摸屏应用程序,它在带有 XP 的信息亭上运行(尽管它不像你说的那样嵌入 XP)。我对任何类型的点击事件或类似事件都没有任何问题。我使用所有正常的鼠标单击事件对其进行了编程,因此它在技术上可以使用鼠标或触摸屏。只要您将控件构建得足够大,以考虑手指将触摸它而不是鼠标指针的事实,我就没有遇到任何问题。

于 2011-01-14T15:07:22.340 回答
2

我同意@bflosabre91。使用鼠标,您可能会遇到同样的问题,事实上,当有人学习使用鼠标时,这种情况经常发生。我认为这个问题在硬件层面和触摸屏如何实际解释用户正在做的事情更相关。

在软件方面,您可以添加一些类似于以下内容的逻辑:

  1. 在鼠标按下时:记录坐标,可能还有指针下方的控件(按钮等)
  2. 鼠标向上:将记录的坐标与当前坐标进行比较。如果它在 x 像素内,请执行“control.click”或将鼠标移动到旧坐标并告诉鼠标单击。

硬件可能已经在做这样的事情......

于 2011-01-14T15:33:02.240 回答