Sobre o Painel de Entrada
[PenInputPanel foi substituído por TextInput. Para obter mais informações, consulte Programação do painel de entrada de texto.]
A partir do Microsoft Windows XP Tablet PC Edition Software Development Kit (SDK) versão 1.0, o Painel de Entrada do Tablet pc no nível do sistema fornece um mecanismo universal para realizar a entrada de texto na plataforma Windows, embora não forneça acesso programático. O objeto PenInputPanel do SDK do Tablet PC versão 1.5 integra ferramentas de entrada de texto a aplicativos.
O gráfico a seguir mostra o painel de entrada da caneta exibido sobre o exemplo de Exemplo de Formulário de Declarações Automáticas .
O objeto PenInputPanel é conveniente para desenvolvedores de aplicativos. Não é necessário substituir controles em formulários existentes. Você pode simplesmente anexar objetos PenInputPanel a controles existentes que recebem entrada de texto e eles podem começar a receber entrada do objeto PenInputPanel .
O objeto PenInputPanel adota as configurações do Painel de Entrada para as seguintes propriedades:
- Layout
- Espessura da tinta
- Tempo limite de reconhecimento
- Tamanho da caixa, modo de envio e outras configurações específicas para entrada em caixa do Leste Asiático
O objeto PenInputPanel não fornece acesso à tinta subjacente. Para obter a tinta, use o controle InkPicture .
O objeto PenInputPanel fornece uma interface do usuário (interface do usuário) in-loco que é facilmente detectável pelos usuários finais de seus aplicativos. Ele é ativado automaticamente quando o usuário toca em uma janela com um objeto PenInputPanel usando a caneta tablet. O painel de entrada de caneta é exibido automaticamente quando o sistema detecta um evento CursorButtonUp para a janela à qual o objeto PenInputPanel está anexado. A ativação automática pode ser desabilitada definindo a propriedade AutoShow comoFALSE.
O painel de entrada de caneta não aparece automaticamente em eventos do mouse. Os eventos de caneta são convertidos em eventos do mouse ao usar os Serviços de Terminal. O objeto PenInputPanel não funciona em uma conexão dos Serviços de Terminal.
Modos de entrada do painel de entrada de caneta
O objeto PenInputPanel permite a funcionalidade do teclado ou a entrada de manuscrito, com teclados adicionais para ajudar na entrada. A interface do usuário para o painel de entrada da caneta inclui:
- Teclado de gravação
- Bloco de escrita para idiomas do Leste Asiático
- Teclados QuickKeys
- Teclado in-loco
A disponibilidade do teclado de escrita versus o teclado de escrita para idiomas do Leste Asiático depende da configuração de localidade padrão do usuário no sistema operacional.
Teclado de Gravação
O painel de escrita é semelhante à interface do usuário familiar do Painel de Entrada.
O bloco de escrita coleta manuscrito do usuário final. A interface do usuário básica inclui uma única linha de escrita na qual o usuário pode escrever texto com uma caneta digital. Quando o usuário termina de gravar e toca no botão Enviar ou aguarda um tempo limite ocorrer, a manuscrito é enviada ao reconhecedor.
A tinta é reconhecida após um período especificado ter decorrido desde o momento em que o último traço de tinta foi coletado. Quando o tempo limite ocorre, a tinta é removida da superfície da coleção e o reconhecimento ocorre. Em seguida, o texto reconhecido é inserido no controle ao qual o objeto PenInputPanel está anexado.
Painel de Várias Caixas do Leste Asiático
A versão do Leste Asiático do painel de entrada de caneta exibe uma interface de várias caixas para inserir caracteres asiáticos. Ele fornece alternativas e é semelhante à interface do usuário do Painel de Entrada. Os usuários podem corrigir caracteres mal reconhecidos tocando em uma caixa de escrita e selecionando o caractere correto em uma lista de alternativas na barra na parte superior do painel de entrada da caneta. Os botões de filtro estão disponíveis para restringir a lista de alternativas de reconhecimento a tipos de caracteres especificados, como símbolos.
As versões coreanas e japonesas do teclado de escrita têm uma chave de conversão além das mini chaves rápidas que são comuns a todas as skins de linguagem.
Para obter caracteres latinos no painel de escrita para idiomas do Leste Asiático, defina a propriedade Factoid para aumentar a precisão do reconhecimento de caracteres latinos. Defina o membro Digit do objeto Factoid para caracteres numéricos ou o membro OneChar do objeto Factoid para caracteres alfabéticos e numéricos.
Teclados QuickKeys
O painel de entrada de caneta fornece dois teclados pequenos para inserir símbolos e números.
Teclado in-loco
O painel de entrada de caneta fornece um modo de teclado para situações em que o reconhecimento de manuscrito não é suficiente. Por exemplo, ao inserir uma senha ou número de parte, é provável que os usuários tenham mais sucesso usando o teclado do painel de entrada da caneta do que o teclado de escrita. Isso ocorre porque é improvável que senhas ou números de parte estejam no dicionário do reconhecedor do bloco de escrita.
Suporte ao reconhecedor
O objeto PenInputPanel dá suporte a reconhecedores de envio para o Windows XP Tablet PC Edition versão 1.0 e o SDK do Tablet PC versão 1.5.
Posicionamento Automático
Por padrão, o painel de entrada de caneta é posicionado automaticamente em relação ao controle ao qual está anexado. Ele não se sobrepõe ao controle, a menos que não haja imóveis de tela suficientes para o painel de entrada da caneta e o controle, ou a menos que o desenvolvedor defina explicitamente a posição do painel de entrada da caneta.
Funções de posicionamento automático somente quando o desenvolvedor não definir explicitamente a posição usando o método MoveTo . Para substituir o posicionamento automático, altere os valores das propriedades Top e Left em um manipulador de eventos PanelMoving .
A posição do painel de entrada da caneta é restrita pelas bordas da tela. Nenhuma borda do painel de entrada da caneta pode estar mais perto de 0,25 polegadas de qualquer borda da tela.
Por padrão, a parte superior do painel de entrada da caneta aparece na parte inferior do controle ao qual está anexada e é separada do controle pelo valor da propriedade VerticalOffset . Se não houver espaço suficiente abaixo do controle, a parte inferior do painel de entrada da caneta aparecerá na parte superior do controle ao qual ele está anexado e será separado do controle pelo valor da propriedade VerticalOffset . Se ainda não houver espaço suficiente, como no caso de um controle de edição em tela inteira, o painel de entrada da caneta sobrepõe o controle.
O painel de entrada da caneta de borda esquerda aparece na borda esquerda do controle ao qual está anexado e é separado do controle pelo valor da propriedade HorizontalOffset , exceto como limitado pela tela. Se a posição desejada colocar o painel de entrada da caneta além dos limites de tela disponíveis, o painel de entrada da caneta pressupõe a posição horizontal mais próxima possível.
Sobreposição forçada
Às vezes, é necessário que o painel de entrada da caneta sobreponha o controle anexado, como no caso de um controle de edição em tela inteira. Nesses casos, o posicionamento automático do painel de entrada de caneta é determinado usando as seguintes regras:
- Quando o ponto de inserção está na metade superior do controle anexado, a posição vertical do painel de entrada da caneta fica na parte inferior da tela, possivelmente colocando-a sobre a parte inferior do controle.
- Quando o ponto de inserção está na metade inferior do controle anexado, a posição vertical do painel de entrada da caneta está na parte superior da tela, possivelmente colocando-a sobre a metade superior do controle.
Controles sem janelas
No caso em que um objeto PenInputPanel está anexado a um controle sem janelas, o painel de entrada da caneta é posicionado em relação ao pai do controle sem janelas. Defina as propriedades Superior e Esquerda em um manipulador de eventos PanelMoving ou use o método MoveTo para posicionar manualmente o painel de entrada da caneta.