Windows Mobile 6.5 Gesture API 介绍
2010-06-01 22:53:00 来源:WEB开发网概述
在windows mobile 6.5中,微软终于添加进了对于Gesture(手势)的支持。同时,在Gesture的基础上,也具备了一些物理引擎的支持。在这个系列文章中,我将给大家介绍Windows Mobile 6.5的这一新特性。
所谓Gesture(手势)既用来描述用户使用手指或者触笔在控件上进行一个短的具有一定方向的移动操作。大多数的Gesture都是基于手指的落下和抬起(WM_LBUTTONDOWN & WM_LBUTTONUP)这个操作组合(当然双击的操作是个特例,它使用两次这个组合)。手势在这个手指的落下和抬起的操作组合之上加入了一些其他信息,例如方向,位置,角度等等。Windows Mobile支持如下的手势:
Gesture描述
Tap 就像是鼠标的单击事件。
手指在特定的时间和距离间隔上落下和抬起后,应用程序会接收到一个GID_SELECT的Gesture消息。同时,有可能在WM_LBUTTONDOWN和GID_SELECT消息之间产生多个WM_MOUSEMOVE消息.
Double Tap 相当于鼠标的左键双击。
用户在特定的时间间隔和距离上进行双击操作,应用程序会获得GID_DOUBLESELECT消息。
Hold 用户可以按下并保持住。
用户按下并保持一定时间,同时手指在一个特定的距离范围内,应用程序将会收到GID_HOLD消息 。在手指抬起或者一个设定的时间间隔之后,将会伴随一个GID_END消息。
Flick 用户在屏幕上快速的滑动手指一段距离。
应用程序将会收到一个或者多个GID_PAN消息,然后是GID_SCROLL消息(手指抬起后),在最后 ,将收到GID_END消息。
Pan 用户按下并保持在屏幕上,然后拖动一顿距离。
应用程序将会收到一个或者多个GID_PAN消息。 当手指抬起后,将会收到一个GID_END消息。
在Hold之后也可以接着产生Pan的消息。
很遗憾,在这里我们没有看到多点触摸的支持。或许在不久的将来,在Windows Mobile 7中,我们期望能看到多点触摸的支持。
本篇Blog基本上翻译自: http://msdn.microsoft.com/en-us/library/ee207148.aspx
默认支持Gesture的控件
在上一小节《Windows Mobile 6.5 Gesture API 介绍 --- (1) 概述》中我们讲到了Windows Mobile 6.5已经支持的手势种类。那么如果我们要使用Gesture的话,哪些控件是支持手势的呢?主要有以下几种:
TabControl, Listbox, Listview, ComboBox, Treeview以及Webbrowser控件。
赞助商链接