這個語言參考部分包含了對觸摸事件、手勢、以及手勢動畫等編程元素的描述。
觸摸API分為兩個部分,管理觸摸輸入的手勢API,和控制顯示地區如何對使用者觸摸作出反應的手勢物理引擎API。
觸摸函數、訊息、以及結構體是與滑鼠共用的,因為應用程式像處理滑鼠左鍵單擊一樣處理手寫筆事件。想瞭解其他觸摸參考資訊,請轉到滑鼠參考。
索引
觸摸手勢 介紹視窗觸摸,並討論如何在你的應用程式中實現觸摸介面。
手勢參考(DTK) 這個API允許你的程式監視觸摸輸入並對觸摸輸入進行編程。
物理引擎概覽 介紹了物理引擎,以及在實現物理借口的時候如何使用它。
物理引擎參考(DTK) 這個API控制螢幕如何對觸摸輸入作出響應,並允許你的應用程式像Shell一樣響應觸摸。
觸摸手勢
觸摸手勢被描述為你的手指或手寫筆在螢幕上的控制項或對象上作出的短暫、定向移動。大部分的手勢是一個獨立的點擊。因此,他們都相當於一個finger?down(WM_LBUTTONDOWN)和finger?up (WM_LBUTTONUP)對。例外的是Double Tap,它包含兩對短暫連續的finger?down(WM_LBUTTONDOWN)和finger?up (WM_LBUTTONUP)。手勢的識別基於finger?down 和 finger?up事件,再加上方向、位置和被手勢辨識器計算出的速度。Windows Mobile支援如下五種手勢。
手勢描述
TapTap表現為滑鼠的左鍵單擊。
當一個finger?down事件和一個finger?up事件在規定的時間段、特定的距離發生時,應用程式就會收到一個單獨的GID_SELECT手勢訊息。在WM_LBUTTONDOWN事件之後,GID_SELECT訊息之前,可能會有幾個WM_MOUSEMOVE訊息。
Double TapDouble Tap表現為滑鼠的左鍵雙擊。
當兩個finger?up事件在規定的時間段、特定的距離內發生時,應用程式會收到一個GID_DOUBLESELECT訊息。
Hold使用者可以在螢幕上按下並保持不動以表示滑鼠右擊。
當手指保持按下超過規定的時間,並且所有的點都在特定距離內時,應用程式會收到一個GID_HOLD訊息。當手指抬起或Hold時間達到界限時,會緊跟著一個GID_END訊息。
Flick使用者可以移動手指划過螢幕以開始逐像素滾動,並且如果移動足夠快的話,滾動在手指抬起後仍會繼續。
在手指的滑動結束時,應用程式會收到一個獨立的GID_SCROLL手勢訊息。Flick會頻繁的發生在Pan之後(一個或多個GID_PAN訊息之後,緊跟著一個GID_SCROLL訊息,然後是一個GID_END訊息)。
Pan使用者可以在螢幕上按下手指並保持按下狀態,然後向任何方向拖動手指以表示滑鼠拖動事件。
當手指位置改變的時候應用程式會收到一個或多個GID_PAN訊息,緊接著在手指抬起時會收到一個GID_END訊息。滑鼠訊息是和手勢訊息交替的。 Panning可以在Hold手勢之後發生。
想瞭解