Status, Composição e Janelas de Candidatos
As janelas status, composição e candidatos formam a interface do usuário para o IME. A janela status indica que o IME está aberto e fornece ao usuário os meios para definir os modos de conversão. A janela de composição é exibida quando o usuário insere texto e, dependendo do modo de conversão, exibe o texto como inserido ou exibe o texto convertido. A janela candidatos aparece em conjunto com a janela de composição. Ele contém uma lista de "candidatos" (caracteres alternativos) para o caractere ou caracteres selecionados na janela de composição. O usuário pode percorrer a lista de candidatos e selecionar os caracteres desejados e, em seguida, retornar à janela de composição. O usuário pode compor o texto desejado dessa forma até que a cadeia de caracteres de composição seja finalizada e a janela seja fechada.
O IME envia os caracteres compostos para o aplicativo com reconhecimento de IME na forma de mensagens de WM_IME_CHAR ou WM_IME_COMPOSITION/GCS_RESULT. Se o aplicativo não processar essas mensagens, a função DefWindowProc as converterá em uma ou mais mensagens WM_CHAR .
Por padrão, o sistema operacional cria e gerencia automaticamente janelas de status, composição e candidatos para requisitos de entrada de texto. Para muitos aplicativos, esse processamento padrão é suficiente. Esses aplicativos dependem inteiramente do sistema operacional para suporte ao IME e são considerados "sem reconhecimento de IME" porque não estão cientes das muitas tarefas que o sistema operacional executa para gerenciar as janelas do IME.
Um aplicativo com reconhecimento de IME, por outro lado, participa da criação e gerenciamento de janelas IME. Esses aplicativos controlam a operação, a posição e a aparência das janelas padrão enviando mensagens para essas janelas e interceptando e processando mensagens das janelas. Em alguns casos, os aplicativos criam suas próprias janelas IME e fornecem processamento completo para suas janelas personalizadas de status, composição e candidatos.
Tópicos relacionados