InkManager.ProcessPointerUpdate(PointerPoint) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Nota
Per l'app di Windows universale tramite XAML (Extensible Application Markup Language), è consigliabile usare InkPresenter e il controllo InkCanvas anziché InkManager.
Elabora le proprietà di posizione e stato, ad esempio pressione e inclinazione, per il puntatore specificato, dall'ultimo evento puntatore fino a e includendo l'evento puntatore corrente. Chiamare questo metodo dopo ProcessPointerDown e prima di ProcessPointerUp.
Importante
Questo metodo non è supportato nelle app desktop.
public:
virtual Platform::Object ^ ProcessPointerUpdate(PointerPoint ^ pointerPoint) = ProcessPointerUpdate;
IInspectable ProcessPointerUpdate(PointerPoint const& pointerPoint);
public object ProcessPointerUpdate(PointerPoint pointerPoint);
function processPointerUpdate(pointerPoint)
Public Function ProcessPointerUpdate (pointerPoint As PointerPoint) As Object
Parametri
- pointerPoint
- PointerPoint
Puntatore di input per cui devono essere elaborati gli aggiornamenti.
Restituisce
Quando l'oggetto InkManipulationMode corrente è Input penna o Selezione, questo metodo restituisce il punto (posizione dello schermo nello spazio input penna) associato all'ultimo ProcessPointerUpdate di pointerPoint.
Esempio
Nell'esempio seguente viene illustrato un gestore per un evento PointerMoved in un controllo InkCanvas.
In questo caso, i punti intermedi (intermediatePoints
) non elaborati dall'ultimo aggiornamento vengono elaborati da InkManager (inkManager
) nella chiamata ProcessPointerUpdate.
void InkingArea_PointerMoved(object sender, Windows.UI.Xaml.Input.PointerRoutedEventArgs e)
{
var pointerPoint = e.GetCurrentPoint(InkingArea);
if (pointerId == (int)pointerPoint.PointerId)
{
switch (inkManager.Mode)
{
case Windows.UI.Input.Inking.InkManipulationMode.Erasing:
// Check if something has been erased.
// In erase mode, ProcessPointerUpdate returns an
// `invalidateRect` (if it is not degenerate something
// has been erased). In erase mode we don't bother processing
// intermediate points.
var invalidateRect =
(Windows.Foundation.Rect)inkManager.ProcessPointerUpdate(
e.GetCurrentPoint(InkingArea));
if (invalidateRect.Height != 0 && invalidateRect.Width != 0)
{
// We don't know what has been erased so we clear the render
// and add back all the ink saved in the ink manager.
renderer.Clear();
renderer.AddInk(inkManager.GetStrokes());
}
break;
case Windows.UI.Input.Inking.InkManipulationMode.Inking:
case Windows.UI.Input.Inking.InkManipulationMode.Selecting:
// Process intermediate points.
var intermediatePoints = e.GetIntermediatePoints(InkingArea);
for (int i = intermediatePoints.Count - 1; i >= 0; i--)
{
inkManager.ProcessPointerUpdate(intermediatePoints[i]);
}
// Live rendering.
renderer.UpdateLiveRender(pointerPoint);
break;
}
}
}
Si applica a
Vedi anche
- Interazioni tramite penna e stilo
- Introduzione: Supportare l'input penna nell'app UWP
- Esempio di analisi dell'input penna (di base) (C#)
- Esempio di riconoscimento della grafia input penna (C#)
- Salvare e caricare tratti input penna da un file ISF (Ink Serialized Format)
- Salvare e caricare tratti input penna dagli Appunti
- Esempio di orientamento e posizione della barra degli strumenti input penna (di base)
- Esempio di orientamento e posizione della barra degli strumenti input penna (dinamico)
- Esempio di app Coloring Book
- Esempio FamilyNotes
- Esempio di input penna (JavaScript)
- Esempio di input penna semplice (C#/C++)
- Esempio di input penna complesso (C++)
- Esempio di analisi dell'input penna