Partager via


Stroke.SetPacketValuesByProperty, méthode (Guid, Int32, array<Int32[])

Mise à jour : November 2007

Définit les données pour une propriété de paquet spécifiée pour un paquet dans l'objet Stroke.

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

Syntaxe

'Déclaration
Public Function SetPacketValuesByProperty ( _
    id As Guid, _
    index As Integer, _
    packetValues As Integer() _
) As Integer
'Utilisation
Dim instance As Stroke
Dim id As Guid
Dim index As Integer
Dim packetValues As Integer()
Dim returnValue As Integer

returnValue = instance.SetPacketValuesByProperty(id, _
    index, packetValues)
public int SetPacketValuesByProperty(
    Guid id,
    int index,
    int[] packetValues
)
public:
int SetPacketValuesByProperty(
    Guid id, 
    int index, 
    array<int>^ packetValues
)
public int SetPacketValuesByProperty(
    Guid id,
    int index,
    int[] packetValues
)
public function SetPacketValuesByProperty(
    id : Guid, 
    index : int, 
    packetValues : int[]
) : int

Paramètres

  • id
    Type : System.Guid
    Identificateur Guid(page pouvant être en anglais) de l'objet PacketProperty utilisé pour sélectionner les données de paquet à définir. Utilisez la propriété PacketDescription pour déterminer les propriétés définies pour cet objet Stroke.
  • index
    Type : System.Int32
    Index de début du paquet à modifier.
  • packetValues
    Type : array<System.Int32[]
    Tableau des valeurs de données de paquet. La méthode échoue si l'une des valeurs du tableau dépasse la valeur minimale ou maximale de la propriété. Pour déterminer la plage de valeurs de la propriété, appelez la méthode GetPacketDescriptionPropertyMetrics.

Valeur de retour

Type : System.Int32
Retourne le nombre réel de paquets définis.

Notes

Cette méthode lève une exception si la longueur du tableau packetValues est incorrecte.

Exemples

Dans cet exemple, chaque objet Stroke sélectionné d'un objet InkOverlay est modifié afin que chaque point de la seconde moitié du trait contienne la valeur de paquet NormalPressure maximale autorisée.

Les valeurs de paquet NormalPressure pour la seconde moitié de l'objet Stroke sont obtenues à l'aide de la méthode GetPacketValuesByProperty. Les valeurs sont ensuite définies sur le maximum autorisé (tel qu'obtenu par la méthode GetPacketDescriptionPropertyMetrics) et sont réappliquées au trait à l'aide de la méthode SetPacketValuesByProperty.

Try
    For Each S As Stroke In mInkOverlay.Selection
        ' get the PacketProperty.NormalPressure metrics for the stroke
        Dim metrics As TabletPropertyMetrics = S.GetPacketDescriptionPropertyMetrics(PacketProperty.NormalPressure)
        ' get the starting point
        Dim startPt As Integer = S.PacketCount / 2
        ' get the NormalPressure values starting at startPt
        Dim npValues() As Integer = S.GetPacketValuesByProperty(PacketProperty.NormalPressure, startPt)
        ' set the NormalPressure values to max
        For k As Integer = 0 To npValues.Length - 1
            npValues(k) = metrics.Maximum
        Next
        ' set the NormalPressure values starting at startPt
        S.SetPacketValuesByProperty(PacketProperty.NormalPressure, startPt, npValues)
    Next

Catch ex As ArgumentException
    ' This exception will be raised if PacketProperty.NormalPressure is not supported
    ' This will be the case if creating strokes with a mouse
End Try
try
{
    foreach (Stroke S in mInkOverlay.Selection)
    {
        // get the PacketProperty.NormalPressure metrics for the stroke
        TabletPropertyMetrics metrics = S.GetPacketDescriptionPropertyMetrics(PacketProperty.NormalPressure);
        // get the starting point
        int startPt = S.PacketCount / 2;
        // get the NormalPressure values starting at startPt
        int[] npValues = S.GetPacketValuesByProperty(PacketProperty.NormalPressure, startPt);
        // set the NormalPressure values to max
        for (int k = 0; k < npValues.Length; k++)
        {
            npValues[k] = metrics.Maximum;
        }
        // set the NormalPressure values starting at startPt
        S.SetPacketValuesByProperty(PacketProperty.NormalPressure, startPt, npValues);
    }
}
catch (ArgumentException)
{
    // This exception will be raised if PacketProperty.NormalPressure is not supported
    // This will be the case if creating strokes with a mouse
}

Plateformes

Windows Vista

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

Stroke, classe

Membres Stroke

SetPacketValuesByProperty, surcharge

Microsoft.Ink, espace de noms

PacketProperty

Stroke.GetPacketDescriptionPropertyMetrics