Classe InkOverlay
Representa um objeto que é útil para cenários de anotação em que os usuários não estão preocupados em executar o reconhecimento na tinta, mas estão interessados no tamanho, forma, cor e posição da tinta.
A criação do controle InkOverlay por trás de um controle transparente (como um GroupBox com o conjunto de propriedades WS_EX_TRANSPARENT) impedirá o InkOverlay de coletar tinta.
InkOverlay tem estes tipos de membros:
Eventos
A classe InkOverlay tem esses eventos.
Evento | Descrição |
---|---|
CursorButtonDown | Ocorre quando o InkOverlay detecta um botão de cursor que está inativo. |
CursorButtonUp | Ocorre quando o InkOverlay detecta um botão de cursor que está ativado. |
CursorDown | Ocorre quando a dica de cursor entra em contato com a superfície do tablet de digitalização. |
CursorInRange | Ocorre quando um cursor entra no intervalo de detecção física (proximidade) do contexto do tablet. |
CursorOutOfRange | Ocorre quando o cursor deixa o intervalo de detecção física (proximidade) do contexto do tablet. |
Doubleclick | Ocorre quando o objeto InkOverlay é clicado duas vezes. |
Gesto | Ocorre quando um gesto específico do aplicativo é reconhecido. |
MouseDown | Ocorre quando o ponteiro do mouse está sobre o objeto InkOverlay e um botão do mouse é pressionado. |
MouseMove | Ocorre quando o ponteiro do mouse é movido sobre o objeto InkOverlay . |
MouseUp | Ocorre quando o ponteiro do mouse está sobre o objeto InkOverlay e um botão do mouse é liberado. |
Mousewheel | Ocorre quando a roda do mouse se move enquanto o objeto InkOverlay tem foco. |
NewInAirPackets | Ocorre quando um pacote no ar é visto, o que acontece quando um usuário move uma caneta perto do tablet e o cursor está dentro da janela do objeto InkOverlay ou o usuário move um mouse dentro da janela associada do objeto InkOverlay . |
NewPackets | Ocorre quando o objeto InkOverlay recebe pacotes. |
Pintado | Ocorre quando o objeto InkOverlay foi concluído redesenhando-se. |
Pintura | Ocorre antes que o objeto InkOverlay seja redesenhado. |
SelectionChanged | Ocorre quando a seleção de tinta dentro do controle é alterada, como por meio de alterações na interface do usuário, procedimentos de recortar e colar ou a propriedade Selection . |
Selectionchanging | Ocorre quando a seleção de tinta dentro do controle está prestes a ser alterada, como por meio de alterações na interface do usuário, procedimentos de recortar e colar ou a propriedade Selection . |
SelectionMoved | Ocorre quando a posição da seleção atual é alterada, como por meio de alterações na interface do usuário, procedimentos de recortar e colar ou a propriedade Selection . |
Selectionmoving | Ocorre quando a posição da seleção atual está prestes a ser alterada, como por meio de alterações na interface do usuário, procedimentos de recortar e colar ou a propriedade Selection . |
SelectionResized | Ocorre quando o tamanho da seleção atual é alterado, como por meio de alterações na interface do usuário, procedimentos de recortar e colar ou a propriedade Selection . |
Selectionresizing | Ocorre quando o tamanho da seleção atual está prestes a ser alterado, como por meio de alterações na interface do usuário, procedimentos de recortar e colar ou a propriedade Selection . |
Traço | Ocorre quando o usuário termina de desenhar um novo traço em qualquer tablet. |
StrokesDeleted | Ocorre depois que os traços são excluídos da propriedade Ink . |
StrokesDeleting | Ocorre antes que os traços sejam excluídos da propriedade Ink . |
Systemgesture | Ocorre quando um gesto do sistema é reconhecido. |
Tablet Adicionado | Ocorre quando um IInkTablet é adicionado ao sistema. |
TabletRemoved | Ocorre quando um Tablet é removido do sistema. |
Interfaces
A classe InkOverlay define essas interfaces.
Interface | Descrição |
---|---|
Iinkoverlay | Esse objeto implementa a interface COM IInkOverlay . |
Métodos
A classe InkOverlay tem esses métodos.
Método | Descrição |
---|---|
Draw | Define um retângulo no qual redesenhar a tinta dentro do objeto InkOverlay . |
GetEventInterest | Retorna o estado atual de um evento de objeto InkOverlay específico, ou seja, se o evento está sendo escutado ou usado. |
GetGestureStatus | Retorna se o objeto InkOverlay está interessado em um gesto específico. |
GetWindowInputRectangle | Recupera o retângulo da janela, em pixels, no qual a tinta é desenhada. |
Hittestselection | Determina qual parte da seleção foi atingida durante um teste de clique. |
SetAllTabletsMode | Esse modo permite que o objeto InkOverlay colete tinta de qualquer tablet anexado ao Tablet PC. |
SetEventInterest | Define se um evento específico deve ser escutado ou usado. |
SetGestureStatus | Define o interesse do objeto InkOverlay em um gesto conhecido. |
SetSingleTabletIntegratedMode | Esse modo permite que o objeto InkOverlay colete tinta de apenas um tablet. A tinta de outros tablets é ignorada pelo objeto InkOverlay . |
SetWindowInputRectangle | Define o retângulo da janela, em pixels, a ser usado para mapear a tinta desenhada para a janela. |
Propriedades
A classe InkOverlay tem essas propriedades.
Propriedade | Tipo de acesso | Descrição |
---|---|---|
AttachMode |
Leitura/gravação |
Obtém ou define o valor que especifica se o objeto InkOverlay está anexado atrás ou na frente da janela conhecida. |
AutoRedraw |
Leitura/gravação |
Obtém ou define um valor que especifica se o InkOverlay repinta a tinta quando a janela é invalidada. |
CollectingInk |
Somente leitura |
Obtém um valor que especifica se a tinta está sendo desenhada no momento em um objeto InkOverlay . |
Collectionmode |
Leitura/gravação |
Obtém ou define o modo de coleta que determina se tinta, gestos ou ambos são reconhecidos conforme o usuário grava. |
Cursores |
Somente leitura |
Obtém a coleção Cursors que está disponível para uso na região de escrita à tinta. |
DefaultDrawingAttributes |
Leitura/gravação |
Obtém ou define o objeto InkDrawingAttributes padrão, que especifica os atributos de desenho que são usados ao desenhar e exibir tinta. |
DesiredPacketDescription |
Leitura/gravação |
Obtém ou define o interesse em aspectos do pacote associado à tinta desenhada no objeto InkOverlay . |
DynamicRendering |
Leitura/gravação |
Obtém ou define um valor que indica se a tinta é renderizada à medida que é desenhada. |
Editingmode |
Leitura/gravação |
Obtém ou define um valor que indica se o InkOverlay está no modo de tinta, no modo de exclusão ou no modo de seleção/edição. |
Enabled |
Leitura/gravação |
Obtém ou define um valor que especifica se o objeto InkOverlay coleta a entrada da caneta. |
EraserMode |
Leitura/gravação |
Obtém ou define um valor que indica se a tinta é apagada por traço ou por ponto. |
EraserWidth |
Leitura/gravação |
Obtém ou define um valor que especifica a largura da ponta da caneta borracha. |
Lidar com |
Leitura/gravação |
Obtém ou define o identificador da janela à qual o objeto InkOverlay está anexado. |
Tinta |
Leitura/gravação |
Obtém ou define o objeto InkDisp associado ao objeto InkOverlay . |
MarginX |
Leitura/gravação |
Obtém ou define as margens ao longo do eixo x, em pixels. |
Margem |
Leitura/gravação |
Obtém ou define as margens ao longo do eixo y, em pixels. |
MouseIcon |
Leitura/gravação |
Obtém ou define o ícone de mouse personalizado atual. |
Mousepointer |
Leitura/gravação |
Obtém ou define um valor que indica o tipo de ponteiro do mouse que aparece quando o mouse está sobre uma parte específica do objeto. |
Renderizador |
Leitura/gravação |
Obtém ou define o objeto InkRenderer usado para desenhar tinta. |
Seleção |
Leitura/gravação |
Obtém ou define a coleção InkStrokes que está selecionada no momento dentro do controle InkOverlay . |
SupportHighContrastInk |
Leitura/gravação |
Obtém ou define um valor que especifica se a tinta é renderizada como apenas uma cor quando o sistema está no modo de Alto Contraste. |
SupportHighContrastSelectionUI |
Leitura/gravação |
Obtém ou define um valor que especifica se toda a interface do usuário de seleção é desenhada em alto contraste quando o sistema está no modo de Alto Contraste. |
Tablet |
Somente leitura |
Obtém o dispositivo tablet que o objeto InkOverlay está usando atualmente para coletar entrada. |
Notas de implementação do MFC
Se você anexou o objeto InkOverlay a um objeto CView, libere o objeto InkOverlay em resposta à mensagem WM_DESTROY conforme mostrado no exemplo a seguir:
BOOL CRecognitionAlternatesSampleCppView::OnWndMsg(UINT msg, WPARAM wp, PARAM lp, LRESULT *pLR)
{
if(WM_DESTROY == msg)
m_spInkOverlay.Release();
return CView::OnWndMsg(msg, wp, lp, pLR);
}
Comentários
Esse objeto pode ser instanciado chamando o método CoCreateInstance em C++.
O objeto InkOverlay é adequado para anotações e rabiscos básicos. O principal uso pretendido desse objeto é exibir tinta como tinta.
Em geral, a interface do usuário em tempo de execução para esse objeto é uma janela transparente com tinta opaca.
Os eventos MouseDown, MouseMove, MouseUp e MouseWheel retornam coordenadas x e coordenadas y em pixels, e não as unidades HIMETRIC associadas ao espaço à tinta. Isso ocorre porque esses eventos substituem os eventos do mouse de aplicativos sem reconhecimento de caneta e esses aplicativos entendem apenas pixels.
Cuidado
Se você estiver definindo a propriedade AttachMode do objeto InkOverlay como InFront, crie o objeto InkOverlay no thread no qual o formulário está sendo executado. Seu aplicativo poderá parar de responder se o objeto InkOverlay for criado em um thread diferente e sua propriedade AttachMode estiver definida como InFront.
Observação
O objeto InkOverlay não pode ser liberado com segurança em um thread que não seja da interface do usuário.
Para melhorar o desempenho do aplicativo, descarte o objeto InkOverlay quando ele não for mais necessário.
Se você anexou o objeto InkOverlay a um objeto CView, libere o objeto InkOverlay em resposta à mensagem WM_DESTROY conforme mostrado no exemplo a seguir:
BOOL CRecognitionAlternatesSampleCppView::OnWndMsg(UINT msg, WPARAM wp, PARAM lp, LRESULT *pLR)
{
if(WM_DESTROY == msg)
m_spInkOverlay.Release();
return CView::OnWndMsg(msg, wp, lp, pLR);
}
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 |
Cabeçalho |
|
Biblioteca |
|