Определить, был ли FocusEvent компонента потерян или приобретен
Вопрос
Я реализую EventQueue и получаю уведомление при отправке AWTEvents. Я жду, пока экземпляры FocusEvent будут отправлены в метод dispatchEvent.
FocusEvent сам по себе не имеет метода, чтобы спрашивать, был ли фокус компонента получен или потерян. Метод paramString возвращает строку, в которую помещается информация, но я не хочу взламывать или анализировать строку. Ответ на запрос содержимого может дать мне ответ, но возвращаемая строка не является константой, поэтому она может измениться в будущем.
Метод paramString для FocusEvent выглядит следующим образом:
switch(id) {
case FOCUS_GAINED:
typeStr = "FOCUS_GAINED";
break;
case FOCUS_LOST:
typeStr = "FOCUS_LOST";
break;
default:
typeStr = "unknown type";
}
return typeStr + (temporary ? ",temporary" : ",permanent") +
",opposite=" + getOppositeComponent();
Вы знаете другое решение этой проблемы?
Решение
Что не так с " evt.getID () " ;? Возвращает FOCUS_LOST
или FOCUS_GAINED
?
Не связан с StackOverflow