Partager via


IStylusAsyncPlugin.Packets, méthode

Mise à jour : November 2007

Avertit l'objet qui implémente l'interface IStylusAsyncPlugin que le stylet se déplace sur le digitaliseur.

Espace de noms :  Microsoft.StylusInput
Assembly :  Microsoft.Ink (dans Microsoft.Ink.dll)

Syntaxe

'Déclaration
Sub Packets ( _
    sender As RealTimeStylus, _
    data As PacketsData _
)
'Utilisation
Dim instance As IStylusAsyncPlugin
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
)

Paramètres

Notes

Vous pouvez modifier les données de paquet en appelant la méthode SetData héritée de l'objet PacketsData contenu dans le paramètre data.

ms585056.alert_note(fr-fr,VS.90).gifRemarque :

Une exception ArgumentException (page pouvant être en anglais) est levée par la méthode SetData si la longueur du tableau dans le paramètre valeur n'est pas un multiple de la valeur de la propriété PacketPropertyCount héritée.

Vous pouvez annuler les paquets en appelant la méthode SetData et en affectant la valeur nullune référence null (Nothing en Visual Basic) (Nothing en Microsoft Visual Basic .NET) au paramètre valeur.

Exemples

Cet exemple C# est extrait du RealTimeStylus Plug-in Sample. Il implémente une méthode Packets qui dessine un petit cercle à l'emplacement de chaque nouveau paquet reçu.

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);
  }
}

Cet exemple Visual Basic .NET est extrait du RealTimeStylus Plug-in Sample. Il implémente une méthode Packets qui dessine un petit cercle à l'emplacement de chaque nouveau paquet reçu.

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

Plateformes

Windows Vista, Windows XP SP2, Windows Server 2003

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Informations de version

.NET Framework

Pris en charge dans : 3.0

Voir aussi

Référence

IStylusAsyncPlugin, interface

Membres IStylusAsyncPlugin

Microsoft.StylusInput, espace de noms

RealTimeStylus

Microsoft.StylusInput.PluginData.PacketsData