Compartir a través de


IStylusSyncPlugin.Packets (Método)

Actualización: noviembre 2007

Informa al objeto que implementa la interfaz IStylusSyncPlugin de que el lápiz se está moviendo sobre la superficie del digitalizador.

Espacio de nombres:  Microsoft.StylusInput
Ensamblado:  Microsoft.Ink (en Microsoft.Ink.dll)

Sintaxis

'Declaración
Sub Packets ( _
    sender As RealTimeStylus, _
    data As PacketsData _
)
'Uso
Dim instance As IStylusSyncPlugin
Dim sender As RealTimeStylus
Dim data As PacketsData

instance.Packets(sender, data)
void Packets(
    RealTimeStylus sender,
    PacketsData data
)
void Packets(
    RealTimeStylus^ sender, 
    PacketsData^ data
)
void Packets(
    RealTimeStylus sender,
    PacketsData data
)
function Packets(
    sender : RealTimeStylus, 
    data : PacketsData
)

Parámetros

Comentarios

Puede modificar los datos del paquete mediante una llamada al método SetData heredado del objeto PacketsData que está contenido en el parámetro data.

Nota

El método SetData inicia la excepción ArgumentException si la longitud de la matriz del parámetro value no es un múltiplo del valor de la propiedad PacketPropertyCount heredada.

Puede cancelar las entradas mediante una llamada al método SetData con el parámetro value establecido en null (Nothing en Microsoft Visual Basic .NET).

Ejemplos

Este ejemplo de C# se extrajo de RealTimeStylus Plug-in Sample. El ejemplo implementa un método Packets que dibuja un círculo pequeño en la ubicación de cada nueva entrada recibida.

public void Packets(RealTimeStylus sender,  PacketsData data)
{           
  // For each new packet received, extract the x,y data
  // and draw a small circle around the result.
  for (int i = 0; i < data.Count ; i += data.PacketPropertyCount)
  {
    // Packet data always has x followed by y followed by the rest
    Point point = new Point(data[i], data[i+1]);

    // Since the packet data is in Ink Space coordinates, we need to convert to Pixels...
    point.X = (int)Math.Round((float)point.X * (float)myGraphics.DpiX/2540.0F);
    point.Y = (int)Math.Round((float)point.Y * (float)myGraphics.DpiY/2540.0F);

    // Draw a circle corresponding to the packet
    myGraphics.DrawEllipse(Pens.Green, point.X - 2, point.Y - 2, 4, 4);
  }
}

Este ejemplo de Visual Basic .NET se ha extraído de RealTimeStylus Plug-in Sample. El ejemplo implementa un método Packets que dibuja un círculo pequeño en la ubicación de cada nueva entrada recibida.

Public Sub Packets(ByVal sender As RealTimeStylus, ByVal data As PacketsData) _
 Implements IStylusSyncPlugin.Packets
    ' For each new packet received, extract the x,y data
    ' and draw a small circle around the result.
    Dim i As Integer
    For i = 0 To data.Count - data.PacketPropertyCount Step data.PacketPropertyCount
        ' Packet data always has x followed by y followed by the rest
        Dim point As New Point(data(i), data((i + 1)))

        ' Since the packet data is in Ink Space coordinates,
        ' we need to convert to Pixels...
        point.X = Math.Round((System.Convert.ToSingle(point.X) * _
              System.Convert.ToSingle(myGraphics.DpiX) / 2540.0F))
        point.Y = Math.Round((System.Convert.ToSingle(point.Y) * _
              System.Convert.ToSingle(myGraphics.DpiY) / 2540.0F))

        ' Draw a circle corresponding to the packet
        myGraphics.DrawEllipse(Pens.Green, point.X - 2, point.Y - 2, 4, 4)
    Next i
End Sub 'Packets

Plataformas

Windows Vista, Windows XP SP2, Windows Server 2003

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Información de versión

.NET Framework

Compatible con: 3.0

Vea también

Referencia

IStylusSyncPlugin (Interfaz)

IStylusSyncPlugin (Miembros)

Microsoft.StylusInput (Espacio de nombres)

RealTimeStylus

Microsoft.StylusInput.PluginData.PacketsData