Thiago, Não sei se ajuda mas enfrentei problema semelhante. Não tenho certeza se essa minha explicação está correta, mas com esse raciocínio eu consegui superar o problema. O que ocorre é que vc está fazendo o requestFocus no mesmo componente que está disparando o focusLost. Isso causa algum problema e o efeito que tinha era como se não existisse mais foco em lugar algum. Então o que fiz foi criar os componentes personalizados extendendo dos originais (ex: MeuInputField extends InputField) e sobrescrevia o método que dispara a perda de foco nos componentes (Component.processFocusEvent). Dessa forma, primeiro eu validava o dado. Caso ele fosse válido eu permitiria disparar de verdade o método de mudança de foco da classe pai (super.processFocusEvent). Caso contrário, o método não fazia nada.... Algo mais ou menos assim: class MeuInputField extends InputField { public void processFocusEvent(FocusEvent e) { If (dados válidos) super.processFocusEvent(e); } } Espero que ajude! -----Mensagem original----- De: Thiago Carneiro [mailto:[EMAIL PROTECTED]] Enviada em: quarta-feira, 9 de maio de 2001 16:00 Para: [EMAIL PROTECTED] Assunto: [java-list] Problema de focus. Caros colegas, Estou tratando um evento de perda de foco. Em um programa meu, quando uma determinada caixa de texto perde o foco, o programa verifica se o conteúdo é válido ou não. Se não for válido, o programa deveria avisar através de uma caixa de diálogo e logo depois retornar o foco para a caixa de texto. No meu programa, a caixa de diálogo aparece advertendo que o conteúdo é inválido, porém o foco permanece no outro componente embora o código mande que o foco deveria voltar à caixa de texto. Gostaria de saber qual é o problema. Alguém poderia me ajudar? Eis um trecho do código: void textField_focusLost(FocusEvent e) { if (!format.verificaFormato(textField.getText())) { dialogo.show; // chama a caixa de diálogo if (dialog.isButtonClicked) { // se o botão Ok for pressionado dialog.dispose(); textField.selectAll(); // seleciona o conteúdo textField.requestFocus(); // deveria voltar o foco para a caixa de texto } } } Grato pela atenção. Carlos. ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------