IStylusAsyncPlugin.Packets Method
Notifies the object implementing the IStylusAsyncPlugin interface that the stylus is moving on the digitizer.
Assembly: Microsoft.Ink (in Microsoft.Ink.dll)
'Declaration Sub Packets ( _ sender As RealTimeStylus, _ data As PacketsData _ ) 'Usage Dim instance As IStylusAsyncPlugin Dim sender As RealTimeStylus Dim data As PacketsData instance.Packets(sender, data)
Parameters
- sender
- Type: Microsoft.StylusInput.RealTimeStylus
The RealTimeStylus object that called this method.
- data
- Type: Microsoft.StylusInput.PluginData.PacketsData
Information about the stylus movement.
You can modify the packet data by calling the inherited SetData method of the PacketsData object contained in the data parameter.
Note: |
|---|
An ArgumentException exception is thrown by the SetData method if the length of the array in the value parameter is not a multiple of the value of the inherited PacketPropertyCount property. |
You can cancel the packets by calling the SetData method with the value parameter set to Nothing (Nothing in Microsoft Visual Basic .NET).
This C# example is excerpted from the RealTimeStylus Plug-in Sample. It implements a Packets method that draws a small circle in the location of each new packet received.
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); } }
This Visual Basic .NET example is excerpted from the RealTimeStylus Plug-in Sample. It implements a Packets method that draws a small circle in the location of each new packet received.
Public Sub Packets(ByVal sender As RealTimeStylus, ByVal data As PacketsData) _ Implements IStylusAsyncPlugin.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
Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Note: