Определить, был ли FocusEvent компонента потерян или приобретен

StackOverflow https://stackoverflow.com/questions/334397

  •  22-07-2019
  •  | 
  •  

Вопрос

Я реализую 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 ?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top