標籤:style blog http color os io strong ar for
原文出自:http://www.bcmeng.com/windows-phone-touch1/
請在此輸入內容(想死啊,寫了一個小時,直接沒儲存不小心刪掉了。那就簡單說說吧)Pointer事件有以下事件:
- PointerCanceled
- PointerEntered
- PointerExited
- PointerMoved
- PointerPressed
- PointerReleased
- PointerCaptureLost
其引發順序如下:
當點擊時:即Tap事件引發的觸摸和指標事件順序如下:
12:4:8-PointerEntered事件發生
12:4:8-PointerPressed事件發生
12:4:8-ManipulationStarting事件發生
12:4:8-PointerMoved事件發生
12:4:8-PointerMoved事件發生
12:4:8-PointerReleased事件發生
12:4:8-Tapped事件發生
12:4:8-PointerExited事件發生
當長按時:即righttap事件引發的觸摸和指標事件如下:
12:6:15-PointerEntered事件發生
12:6:15-PointerPressed事件發生
12:6:15-ManipulationStarting事件發生
12:6:15-PointerMoved事件發生
12:6:15-PointerMoved事件發生
12:6:16-PointerReleased事件發生
12:6:16-RightTapped事件發生
12:6:16-PointerExited事件發生
關於各個指標事件的含義,大家根據名稱也能意會,小夢剛才寫的很詳細,只不過沒了,大家就直接參考MSDN文檔吧。不過要注意:
每當觸控操作產生 PointerPressed 事件時,該事件緊接在 PointerEntered 事件之後,並且所有事件數目據對於這兩個事件具有相同的資訊(相同的指標 ID、相同的位置等)
PointerPressed和PointerReleased事件並不總是成對出現的。您的應用程式應該傾聽並處理可能得出一個指向下的動作(比如無論如何PointerExited,PointerCanceled和PointerCaptureLost)。
下面示範一個通過指標事件和LIne控制項實現的筆觸畫圖執行個體:
首先定義一個畫布:
<Canvas Name=”canvas”Background=”Transparent”PointerPressed=”canvas_PointerPressed”PointerMoved=”canvas_PointerMoved”></Canvas>
後台邏輯:
private Point currentPoint; //最新的,當前的點private Point oldPoint;//上一個點private void canvas_PointerPressed(object sender, PointerRoutedEventArgs e){currentPoint = e.GetCurrentPoint(canvas).Position;oldPoint = currentPoint;}private void canvas_PointerMoved(object sender, PointerRoutedEventArgs e){currentPoint = e.GetCurrentPoint(canvas).Position;Line line = new Line() { X1 = currentPoint.X, Y1 = currentPoint.Y, X2 = oldPoint.X, Y2 = oldPoint.Y };line.Stroke = new SolidColorBrush(Colors.Red);line.StrokeThickness = 5;line.StrokeLineJoin = PenLineJoin.Round;line.StrokeStartLineCap = PenLineCap.Round;line.StrokeEndLineCap = PenLineCap.Round;this.canvas.Children.Add(line);oldPoint = currentPoint;}
如果對Line的屬性不清楚,請參考MSDN:http://msdn.microsoft.com/library/windows/apps/system.windows.shapes.shape(v=vs.105).aspx
運行效果如下:
windows phone觸控和指標原始碼下載;點我下載哦!
Windows Phone 8.1開發:觸控和指標事件2