Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A partir do Windows Vista, o Tablet PC Technology tem suporte para entrada por toque em computadores tablet com digitalizadores compatíveis com toque. Esse suporte inclui uma interface do usuário aprimorada para ajudar no direcionamento e no comando do Windows ao usar um dedo para entrada.
Suporte ao digitalizador de toque
Entrada de caneta e toque não exclusiva
Não suponha que a entrada por caneta e toque seja mutuamente exclusiva em InkCollector, InkOverlay e aplicativos RealTimeStylus.
No Windows Vista, quando o sistema reconhece uma caneta, ele ignora a entrada por toque. Ou seja, o traço de toque termina e o traço da caneta começa. Como isso pode mudar no futuro, seu código não deve assumir que a entrada por caneta e toque é mutuamente exclusiva.
Outras fontes de mensagem do mouse
Há outras fontes de mensagens do mouse mesmo quando o usuário está interagindo apenas usando o dedo ou a caneta. As fontes incluem touchpads, bem como movimento destinado a permitir que um aplicativo por trás de uma janela em camadas esteja ciente de que o mouse está se movendo acima do aplicativo.
Habilitando e desabilitando a interface do usuário de entrada por toque
Talvez você deseje habilitar ou desabilitar a interface do usuário de entrada por toque, dependendo dos requisitos do aplicativo. Para fazer isso, intercepte mensagens da janela do sistema operacional em um procedimento de janela e modifique a mensagem do Windows. Substitua WndProc em seu aplicativo para interceptar essas mensagens. O pseudocódigo C# a seguir mostra como habilitar e desabilitar a interface do usuário de entrada por toque. O código também mostra o uso da mesma técnica para desabilitar o gesto de pressionar e segurar. Esse método também funciona para desabilitar a caneta.
const int WM_TABLET_QUERY_SYSTEM_GESTURE_STATUS = 716;
const uint SYSTEM_GESTURE_STATUS_NOHOLD = 0x00000001;
const uint SYSTEM_GESTURE_STATUS_TOUCHUI_FORCEON = 0x00000100;
const uint SYSTEM_GESTURE_STATUS_TOUCHUI_FORCEOFF = 0x00000200;
protected override void WndProc(ref Message msg)
{
switch (msg.Msg)
{
case WM_TABLET_QUERY_SYSTEM_GESTURE_STATUS:
{
uint result = 0;
if (...)
{
result |= SYSTEM_GESTURE_STATUS_NOHOLD;
}
if (...)
{
result |= SYSTEM_GESTURE_STATUS_TOUCHUI_FORCEON;
}
if (...)
{
result |= SYSTEM_GESTURE_STATUS_TOUCHUI_FORCEOFF;
}
msg.Result = (IntPtr)result;
}
break;
default:
base.WndProc(ref msg);
break;
}
}
Tópicos relacionados