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
- sender
Tipo: Microsoft.StylusInput.RealTimeStylus
Objeto RealTimeStylus que llamó a este método.
- data
Tipo: Microsoft.StylusInput.PluginData.PacketsData
Información sobre el movimiento del lápiz.
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