Compartir a través de


Stroke.GetPacketValuesByProperty (Método) (Guid, Int32)

Actualización: noviembre 2007

Devuelve los datos para una propiedad de paquete especificada para un paquete en el objeto Stroke.

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

Sintaxis

'Declaración
Public Function GetPacketValuesByProperty ( _
    id As Guid, _
    index As Integer _
) As Integer()
'Uso
Dim instance As Stroke
Dim id As Guid
Dim index As Integer
Dim returnValue As Integer()

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

Parámetros

  • index
    Tipo: System.Int32
    El punto inicial del índice de base cero hasta un paquete dentro del objeto Stroke.

Valor devuelto

Tipo: array<System.Int32[]
Devuelve una matriz de enteros de 32 bits firmados que especifica el valor del objeto PacketProperty solicitado para cada punto solicitado desde el objeto Stroke.

Comentarios

Puede ser que una propiedad de paquete concreta no esté disponible en un objeto Stroke determinado. Un Tablet PC puede tener más de una tableta para la entrada de datos del usuario. La colección Tablets contiene una lista de todas las tabletas asociada a Tablet PC. Use el método IsPacketPropertySupported para determinar si una propiedad de paquete concreta es compatible con un objeto Tablet específico o con todas las tabletas disponibles. Use, asimismo, las propiedades InkCollector.DesiredPacketDescription, InkOverlay.DesiredPacketDescription o InkPicture.DesiredPacketDescription para controlar qué propiedades de paquete se van a recopilar en los nuevos trazos.

Ejemplos

En este ejemplo, cada objeto Stroke seleccionado de un objeto InkOverlay se modifica de forma que cada punto de la segunda mitad del trazo contiene el valor de paquete NormalPressure máximo permitido.

Con el método GetPacketValuesByProperty, se obtienen los valores del paquete NormalPressure para la segunda mitad del objeto Stroke. Los valores se establecen, a continuación, en el máximo permitido (que se obtiene a través del método GetPacketDescriptionPropertyMetrics) y se aplican de nuevo al trazo mediante el método 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
}

Plataformas

Windows Vista

.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

Stroke (Clase)

Stroke (Miembros)

GetPacketValuesByProperty (Sobrecarga)

Microsoft.Ink (Espacio de nombres)

InkCollector.DesiredPacketDescription

InkOverlay.DesiredPacketDescription

InkPicture.DesiredPacketDescription

PacketProperty

Tablet

Tablet.IsPacketPropertySupported

Tablets

Tablets.IsPacketPropertySupported