Share via


InkCollector (Clase)

Actualización: noviembre 2007

Representa un objeto que se usa para capturar entradas manuscritas de los dispositivos de Tablet PC disponibles.

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

Sintaxis

'Declaración
<UIPermissionAttribute(SecurityAction.Demand, Window := UIPermissionWindow.SafeTopLevelWindows)> _
<PermissionSetAttribute(SecurityAction.InheritanceDemand, Name := "FullTrust")> _
Public Class InkCollector _
    Implements IDisposable
'Uso
Dim instance As InkCollector
[UIPermissionAttribute(SecurityAction.Demand, Window = UIPermissionWindow.SafeTopLevelWindows)]
[PermissionSetAttribute(SecurityAction.InheritanceDemand, Name = "FullTrust")]
public class InkCollector : IDisposable
[UIPermissionAttribute(SecurityAction::Demand, Window = UIPermissionWindow::SafeTopLevelWindows)]
[PermissionSetAttribute(SecurityAction::InheritanceDemand, Name = L"FullTrust")]
public ref class InkCollector : IDisposable
/** @attribute UIPermissionAttribute(SecurityAction.Demand, Window = UIPermissionWindow.SafeTopLevelWindows) */
/** @attribute PermissionSetAttribute(SecurityAction.InheritanceDemand, Name = "FullTrust") */
public class InkCollector implements IDisposable
public class InkCollector implements IDisposable

Comentarios

Advertencia

Para evitar una pérdida de memoria debe llamar explícitamente al método Dispose en cualquier objeto InkCollector al que se haya asociado un controlador de eventos antes de que el objeto quede fuera de ámbito.

El objeto InkCollector solamente recopila entradas de movimientos y de entradas manuscritas. El único propósito de InkCollector es recopilar entradas manuscritas del hardware (por ejemplo, usando objetos Tablet y Cursor ) y pasarlas a una aplicación. En resumen, lo hace es distribuir la entrada manuscrita en uno o varios objetos Ink diferentes, haciendo las veces de contenedor de las entradas manuscritas distribuidas.

Para usar un objeto InkCollector, créelo, establezca la ventana que recopilará la entrada manuscrita dibujada y habilítelo. Una vez habilitado InkCollector, puede recopilar entradas manuscritas solo de tres maneras (tal y como se especifica en la enumeración CollectionMode ):

  • InkOnly, donde se crea un objeto Stroke.

  • GestureOnly, donde se crea un objeto Gesture.

  • InkAndGesture, donde se crea un trazo, un movimiento o ambos, dependiendo del modo en que la aplicación administra los eventos.

Por cada movimiento de cursor dentro del intervalo de un dispositivo de Tablet PC, InkCollector recopila un trazo o un movimiento, y a veces ambos. La compatibilidad de movimientos se integra mediante el reconocedor de movimientos de Microsoft.

Un objeto InkCollector administras las entradas en Tablet PC. Las entradas manuscritas se pueden recopilar simultáneamente de todas los Tablet PC asociados (incluido el mouse). Los cambios en los objetos Cursor y CursorButton pueden hacer que se desencadene el evento InkCollector.

Un objeto InkCollector también administra una lista de los cursores que encuentra durante su existencia. Cuando InkCollector encuentra un nuevo cursor, el evento CursorInRange se desencadena con la propiedad NewCursor del objeto InkCollectorCursorInRangeEventArgs establecida en true. Las aplicaciones usan el objeto InkCollector para administrar los nuevos cursores.

Se puede asociar más de un objeto InkCollector a un identificador de ventana determinado, incluso si su área de recolección, establecida mediante el constructor o el método SetWindowInputRectangle, se superpone. Sin embargo, la única manera de que este escenario funcione es que cada objeto InkCollector llame al método SetSingleTabletIntegratedMode y use una única tableta. Este comportamiento facilita el almacenamiento de entradas manuscritas en un objeto independiente de cada tableta.

Se produce un error si el rectángulo de entrada de la ventana de un objeto InkCollector activado (establecido con la propiedad Enabled ) se superpone al rectángulo de entrada de la ventana de otro objeto InkCollector activado.

Nota

La superposición se puede producir sin errores con tal de que solo esté habilitado uno de los rectángulos de entrada a la vez.

Los eventos MouseDown, MouseMove, MouseUp y MouseWheel devuelven coordinadas X e Y en píxeles y no en unidades HIMETRIC que están asociadas al espacio de entrada manuscrita. Esto se debe a que estos eventos reemplazan a eventos del mouse de aplicaciones que no reconocen la pluma, y estas aplicaciones solo entienden píxeles.

InkCollector se comporta de manera diferente en aplicaciones creadas mediante Microsoft Visual Basic y en las que se han creado mediante Microsoft Foundation Classes (MFC). Para obtener más información sobre estoa comportamientos, vea Ink Collection.

Nota

El objeto InkCollector no se puede liberar sin riesgos en un subproceso que no sea de interfaz de usuario.

Para mejorar el rendimiento de la aplicación, elimine manualmente un objeto InkCollector cuando ya no lo necesite.

ms583683.alert_security(es-es,VS.90).gifNota de seguridad:

Si se usa en entornos de confianza parcial, esta clase y todos sus métodos necesitan el permiso UIPermissionWindow.SafeTopLevelWindows. Vea Security and Trust para obtener más información.

Jerarquía de herencia

System.Object
  Microsoft.Ink.InkCollector

Seguridad para subprocesos

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

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

InkCollector (Miembros)

Microsoft.Ink (Espacio de nombres)

Ink

InkOverlay

InkPicture

InkEdit

Otros recursos

Ink Collection