1. 程式人生 > >WPF 多點觸摸開發[2]:WPF觸摸的幾個手勢的執行順序

WPF 多點觸摸開發[2]:WPF觸摸的幾個手勢的執行順序

的人 賦值 一個 release 比較 touch 開始 tar 分析

原文:WPF 多點觸摸開發[2]:WPF觸摸的幾個手勢的執行順序

前面我講了在win7下使用模擬器,進行調試模擬多點觸摸,其實際開發中這樣也比較麻煩..

要拿幾個鼠標. 所以更多的人會 買個觸摸套 套在顯示屏上. 這樣可支持 2點觸摸. 又沒有正真觸摸屏的昂貴,價格也相對優惠很多.

接下來進入正題 . WPF其實本身對觸摸事件就支持. 其中有些高及觸屏的操作的手勢路由事件. 大大增強了用戶體驗性. 使得我們能做出類似iphone手機的的觸控效果.並使之這些柔和的效果 移植到桌面觸摸應用上.

首先我們介紹幾個 手勢 他們分別是

ManipulationStarting、ManipulationStarted、ManipulationDelta、ManipulationInertiaStarting、ManipulationCompleted

英文還行的朋友 從名字上就能很好的看出 幾個手勢的含義 呵呵.

首先我們介紹 ManipulationStarting 故名思議, 觸摸開始時候 Touch 手指觸摸的時候

該事件被觸發. 執行順序為No1.

如果你此時不動. ManipulationStarted 觸發觸摸開始後

單純的touch後, 此事件結束 立即調用了Complete()方法 完成操作 直接觸發了.ManipulationCompleted

觸摸結束事件.

其中路由事件 會激發 TouchMove. 由此在ManipulationStarted 時候 會激發 ManipulationDelta

這個英文Delta 有變換函數的意思 我們看到的觸摸時候旋轉 縮放 劃動 其實 都是在這裏.

當操作 released的時候 也就是停歇,一瞬間 會激發ManipulationInertiaStarting 這就是賦值慣性的時候

有了他 使得觸摸的變化 具有 加速或者減速的柔和效果

最終結束的時候都會觸發 .ManipulationCompleted

上面的文字說的似乎有點饒,懂的很明白,初學的可能就有點 不清晰 下面是msdn 找的一張圖清晰的展現了他們的執行順序

技術分享圖片

一下章 我們講 使用這些手勢 去創建 一個 觸摸的應用,以及具體深入分析 這些高級觸摸事件

作者: 夜中心寒

屬於:殊勝科技. 官網: http://www.utionsoft.net

WPF 多點觸摸開發[2]:WPF觸摸的幾個手勢的執行順序