Compartir a través de


StrokeCollection.GetIncrementalLassoHitTester(Int32) Método

Definición

Crea un IncrementalLassoHitTester que realiza pruebas de posicionamiento de StrokeCollection con un trazado de lazo (a mano alzada).

public:
 System::Windows::Ink::IncrementalLassoHitTester ^ GetIncrementalLassoHitTester(int percentageWithinLasso);
public System.Windows.Ink.IncrementalLassoHitTester GetIncrementalLassoHitTester (int percentageWithinLasso);
member this.GetIncrementalLassoHitTester : int -> System.Windows.Ink.IncrementalLassoHitTester
Public Function GetIncrementalLassoHitTester (percentageWithinLasso As Integer) As IncrementalLassoHitTester

Parámetros

percentageWithinLasso
Int32

Porcentaje mínimo de cada Stroke que debe contener el lazo para que se considere incluido.

Devoluciones

IncrementalLassoHitTester

IncrementalLassoHitTester que realiza pruebas de posicionamiento con StrokeCollection.

Ejemplos

En el ejemplo siguiente se muestra cómo obtener un objeto IncrementalLassoHitTester que permite a un usuario seleccionar trazos con una herramienta lazo. Para crear un control que permita a un usuario seleccionar entrada de lápiz, vea Cómo: Seleccionar entrada de lápiz de un control personalizado.

private void InitializeHitTester(StylusPointCollection collectedPoints)
{
    // Deselect any selected strokes.
    foreach (Stroke selectedStroke in selectedStrokes)
    {
        selectedStroke.DrawingAttributes.Color = inkDA.Color;
    }
    selectedStrokes.Clear();

    if (mode == InkMode.Select)
    {
        // Remove the previously drawn lasso, if it exists.
        if (lassoPath != null)
        {
            presenter.Strokes.Remove(lassoPath);
            lassoPath = null;
        }

        selectionTester =
            presenter.Strokes.GetIncrementalLassoHitTester(80);
        selectionTester.SelectionChanged += 
            new LassoSelectionChangedEventHandler(selectionTester_SelectionChanged);
        selectionTester.AddPoints(collectedPoints);
    }
}
Private Sub InitializeHitTester(ByVal collectedPoints As StylusPointCollection)
    ' Deselect any selected strokes.
    Dim selectedStroke As Stroke
    For Each selectedStroke In selectedStrokes
        selectedStroke.DrawingAttributes.Color = inkDA.Color
    Next selectedStroke
    selectedStrokes.Clear()


    If mode = InkMode.SelectMode Then

        ' Remove the previously drawn lasso, if it exists.
        If Not (lassoPath Is Nothing) Then
            presenter.Strokes.Remove(lassoPath)
            lassoPath = Nothing
        End If

        selectionTester = presenter.Strokes.GetIncrementalLassoHitTester(80)
        AddHandler selectionTester.SelectionChanged, AddressOf selectionTester_SelectionChanged
        selectionTester.AddPoints(collectedPoints)
    End If

End Sub

Comentarios

El GetIncrementalLassoHitTester método devuelve un IncrementalLassoHitTester objeto que considera que Stroke es "hit" cuando la ruta de acceso lazo la rodea. Esto es útil para implementar características, como la capacidad de seleccionar un trazo con una herramienta lazo. InkCanvas utiliza un IncrementalLassoHitTester objeto para implementar la herramienta de selección de lazo.

Se aplica a