Metodo InkAnalyzerBase.AddStroke (Int32, array<Int32[], array<Guid[])
Aggiornamento: novembre 2007
Aggiunge dati relativi a un singolo tratto all'analizzatore dell'input penna e assegna l'identificatore delle impostazioni cultura del thread di input attivo al tratto.
Spazio dei nomi: System.Windows.Ink.AnalysisCore
Assembly: IACore (in IACore.dll)
Sintassi
'Dichiarazione
Public Function AddStroke ( _
strokeId As Integer, _
strokePacketData As Integer(), _
strokePacketDescription As Guid() _
) As ContextNodeBase
'Utilizzo
Dim instance As InkAnalyzerBase
Dim strokeId As Integer
Dim strokePacketData As Integer()
Dim strokePacketDescription As Guid()
Dim returnValue As ContextNodeBase
returnValue = instance.AddStroke(strokeId, _
strokePacketData, strokePacketDescription)
public ContextNodeBase AddStroke(
int strokeId,
int[] strokePacketData,
Guid[] strokePacketDescription
)
public:
ContextNodeBase^ AddStroke(
int strokeId,
array<int>^ strokePacketData,
array<Guid>^ strokePacketDescription
)
public ContextNodeBase AddStroke(
int strokeId,
int[] strokePacketData,
Guid[] strokePacketDescription
)
public function AddStroke(
strokeId : int,
strokePacketData : int[],
strokePacketDescription : Guid[]
) : ContextNodeBase
Parametri
- strokeId
Tipo: System.Int32
Identificatore del tratto.
- strokePacketData
Tipo: array<System.Int32[]
Matrice che contiene i dati del pacchetto per il tratto.
- strokePacketDescription
Tipo: array<System.Guid[]
Matrice che contiene gli identificatori di proprietà del pacchetto.
Valore restituito
Tipo: System.Windows.Ink.AnalysisCore.ContextNodeBase
Nodo di contesto al quale l'analizzatore dell'input penna ha aggiunto il tratto.
Note
L'oggetto InkAnalyzerBase aggiunge il tratto a un oggetto ContextNodeBase con un valore della proprietà Type di UnclassifiedInk.
L'analizzatore dell'input penna assegna l'identificatore delle impostazioni cultura del thread di input attivo al tratto e aggiunge il tratto al primo nodo dell'input penna non classificato nel nodo radice dell'analizzatore dell'input penna che contiene tratti con lo stesso identificatore delle impostazioni cultura. Se l'analizzatore dell'input penna non è in grado di rilevare un nodo con lo stesso identificatore delle impostazioni cultura, crea un nuovo oggetto ContextNodeBase sotto il nodo radice e aggiunge il tratto al nuovo nodo dell'input penna non classificato.
strokePacketData contiene dati di pacchetto per tutti i punti nel tratto. strokePacketDescription contiene GUID che descrivono i tipi di dati di pacchetto inclusi per ogni punto nel tratto. Per un elenco completo delle proprietà del pacchetto disponibili, vedere la classe PacketProperty.
Questo metodo espande l'oggetto DirtyRegion all'unione del valore corrente dell'area e del riquadro del tratto aggiunto.
Se InkAnalyzerBase contiene già un tratto con lo stesso identificatore, InkAnalyzerBase genera un'eccezione.
Esempi
In questo esempio viene definito un metodo che converte un oggetto Stroke nei dati di pacchetto e aggiunge i dati relativi al tratto a un oggetto InkAnalyzerBase. Il metodo restituisce l'oggetto ContextNodeBase al quale l'analizzatore dell'input penna ha aggiunto il tratto.
''' <summary>
''' Adds a stroke to an InkAnalyzerBase.
''' </summary>
''' <param name="baseInkAnalyzer">
''' The analyzer that receives the stroke.</param>
''' <param name="theStroke">The stroke to add.</param>
''' <returns>The node to which the analyzer added the stroke.</returns>
''' <remarks>
''' This method converts stroke data to packet data for example only.
''' The InkAnalyzerBase is used when your application is handling packet
''' data. If your application uses stroke data from an Ink object, then
''' you would use InkAnalyzer.
''' </remarks>
Public Overloads Shared Function MyAddStroke( _
ByVal baseInkAnalyzer As System.Windows.Ink.AnalysisCore.InkAnalyzerBase, _
ByVal theStroke As Microsoft.Ink.Stroke) _
As System.Windows.Ink.AnalysisCore.ContextNodeBase
If baseInkAnalyzer Is Nothing Then
Throw New ArgumentNullException("baseInkAnalyzer")
End If
If theStroke Is Nothing Then
Throw New ArgumentNullException("theStroke")
End If
' Add a single stroke to the InkAnalyzerBase.
Dim result As System.Windows.Ink.AnalysisCore.ContextNodeBase = _
baseInkAnalyzer.AddStroke(theStroke.Id, _
theStroke.GetPacketData(), theStroke.PacketDescription)
Return result
End Function 'AddStroke
/// <summary>
/// Adds a stroke to an InkAnalyzerBase.
/// </summary>
/// <param name="baseInkAnalyzer">
/// The analyzer that receives the stroke.</param>
/// <param name="theStroke">The stroke to add.</param>
/// <returns>The node to which the analyzer added the stroke.</returns>
/// <remarks>
/// This method converts stroke data to packet data for example only.
/// The InkAnalyzerBase is used when your application is handling packet
/// data. If your application uses stroke data from an Ink object, then
/// you would use InkAnalyzer.
/// </remarks>
public static System.Windows.Ink.AnalysisCore.ContextNodeBase MyAddStroke(
System.Windows.Ink.AnalysisCore.InkAnalyzerBase baseInkAnalyzer,
Microsoft.Ink.Stroke theStroke)
{
if (null == baseInkAnalyzer)
{
throw new ArgumentNullException("baseInkAnalyzer");
}
if (null == theStroke)
{
throw new ArgumentNullException("theStroke");
}
// Add a single stroke to the InkAnalyzerBase.
System.Windows.Ink.AnalysisCore.ContextNodeBase result = baseInkAnalyzer.AddStroke(
theStroke.Id, theStroke.GetPacketData(),
theStroke.PacketDescription);
return result;
}
Piattaforme
Windows Vista, Windows XP SP2, Windows Server 2003
.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.
Informazioni sulla versione
.NET Framework
Supportato in: 3.0