Compartilhar via


Método IInkCollector::get_CollectionMode (msinkaut.h)

Obtém ou define o modo de coleta que determina se tinta, gesto ou ambos são reconhecidos conforme o usuário grava.

Essa propriedade é leitura/gravação.

Sintaxe

HRESULT get_CollectionMode(
  InkCollectionMode *Mode
);

Parâmetros

Mode

Valor retornado

Nenhum

Comentários

Para obter uma lista dos modos que você pode usar, consulte o tipo de enumeração InkCollectionMode . No entanto, ao usar a propriedade CollectionMode em um sistema que tem o Microsoft Windows XP Tablet PC Edition Software Development Kit (SDK) instalado, mas que não tem o reconhecedor instalado, o modo não pode ser definido como GestureOnly ou InkAndGesture.

Nota O objeto InkCollector , o objeto InkOverlay ou o controle InkPicture gera um erro se você tentar alterar a propriedade CollectionMode enquanto a tinta está sendo coletada. Para evitar esse conflito, marcar a propriedade CollectingInk antes de alterar a propriedade CollectionMode.
 
Os seguintes comportamentos ocorrem para cada um dos valores CollectionMode :

Modo InkOnly

  • Somente tinta é coletada; gestos não são.
  • O interesse do evento Gesture é definido como FALSE (todos os outros interesses do evento permanecem como eram).

Modo GestureOnly

  • Somente gestos são coletados; tinta não é. Os traços são excluídos depois que são enviados para o reconhecedor de gestos.
  • O interesse do evento Gesture é definido como TRUE (todos os outros interesses do evento permanecem como eram).
  • O coletor de tinta não dispara os seguintes eventos relacionados a traços e pacotes: os eventos CursorDown, Stroke, NewPackets e NewInAirPackets .
  • Eventos de cursor são acionados.
  • A tinta é sempre excluída.

Modo InkAndGesture

  • Tinta e gestos são coletados.
  • Somente gestos de traço único são reconhecidos.
  • O interesse do evento Gesture é definido como TRUE (todos os outros interesses do evento permanecem como eram).
  • O evento Gesture é acionado primeiro, permitindo que você aceite ou cancele o gesto. Para cancelar o gesto, defina o parâmetro Cancel como TRUE. Cancelar o gesto força o coletor de tinta a coletar a tinta.
Alterar o modo de coleção não altera a status de gestos individuais.

O comportamento indesejado pode ocorrer quando CollectionMode é definido como InkAndGesture e o interesse de um objeto/controle em um gesto conhecido é definido (chamando o método SetGestureStatus ). Se você desenhar tinta semelhante ao gesto conhecido e o gesto conhecido estiver na lista de alternativas do reconhecedor, o evento Gesture será acionado e a tinta desaparecerá, mesmo que o gesto não seja o principal alternativo. Para impedir que a tinta desapareça e cancele a coleta do gesto, defina o parâmetro Cancel como TRUE se o evento for aquele no qual você não tem interesse.

Quando CollectionMode é definido como GestureOnly, o tempo limite entre quando um usuário adiciona um gesto e quando o evento Gesture ocorre é um valor fixo que não pode ser alterado programaticamente. O reconhecimento de gestos é mais rápido no modo InkAndGesture . Para impedir a coleta de tinta enquanto estiver no modo InkAndGesture , você pode:

  1. Defina a propriedade CollectionMode como InkAndGesture.
  2. No evento Stroke , exclua o traço.
  3. No evento Gesture , processe o gesto.
  4. Defina DynamicRendering como FALSE para evitar o fluxo de tinta durante a geação.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP Tablet PC Edition [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Nenhum compatível
Plataforma de Destino Windows
Cabeçalho msinkaut.h
Biblioteca InkObj.dll

Confira também

Propriedade CollectingInk

Propriedade Enabled

IInkCollector

Enumeração InkCollectionMode

Classe InkCollector