Estou tentando fazer uma rotina que precisa pegar a entrada e perda de focus dos componentes(textbox) e executar uma outra rotina. Para não ter que colocar os códigos nos eventos LostFocus e GotFocus de cada componente criei um hook para pegar as mensagens do windows e verificar se é uma perda de focus(EN_KILLFOCUS) ou uma entrada (EN_SETFOCUS). Vou tentar resumir como fiz:
1- criei um hook para WH_GETMESSAGE.
2- Se a mensagem for uma WM_COMMAND verifico se foi é peda ou entrada de focus para um textbox.
3- Para o Killfocus funciona blza.
4- Mas quando entro(SetFocus) em textbox não é gerado um WM_COMMAND.
Rastreei as mensagens que ocorrem quando entro(clico ou entro via TAB) em um textbox e simplesmente não tem nenhum WM_COMMAND. O mais estranho é que funciona para o EM_KILLFOCUS...
Pergunta
Guest Rivaldo Fernandes
E ai galera!
Estou tentando fazer uma rotina que precisa pegar a entrada e perda de focus dos componentes(textbox) e executar uma outra rotina. Para não ter que colocar os códigos nos eventos LostFocus e GotFocus de cada componente criei um hook para pegar as mensagens do windows e verificar se é uma perda de focus(EN_KILLFOCUS) ou uma entrada (EN_SETFOCUS). Vou tentar resumir como fiz:
1- criei um hook para WH_GETMESSAGE.
2- Se a mensagem for uma WM_COMMAND verifico se foi é peda ou entrada de focus para um textbox.
3- Para o Killfocus funciona blza.
4- Mas quando entro(SetFocus) em textbox não é gerado um WM_COMMAND.
Rastreei as mensagens que ocorrem quando entro(clico ou entro via TAB) em um textbox e simplesmente não tem nenhum WM_COMMAND. O mais estranho é que funciona para o EM_KILLFOCUS...
Alguém tem alguma idéia de como resolver isto?
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.