Проблема с отслеживанием фокуса (JTabbedPane) - PullRequest
2 голосов
/ 28 апреля 2011

Я бы хотел отследить фокус всех компонентов моего Java-приложения.Я зарегистрировал метод, который работает для большинства компонентов, но он не работает для смены вкладок.Вот код:

FocusManager.getCurrentManager().addPropertyChangeListener(new PropertyChangeListener() {
  @Override
  public void propertyChange(PropertyChangeEvent evt) {
    System.out.println(evt.getPropertyName() + " " + evt.getNewValue());
  }
}

Если я изменю вкладку в JTabbedPane, это не приведет к печати сообщения.Я подозреваю, что это связано с тем, что фокус JTabbedPane не изменился (так как нажатие на другую вкладку может означать, что оно все еще принадлежит родительскому JTabbedPane).метод сохранения для отслеживания изменений фокуса в Java, который работает также для изменяемых вкладок?

Cheers, Max

1 Ответ

1 голос
/ 28 апреля 2011

Вы можете добавить ChangeListener на панель вкладок, чтобы прослушивать изменения на вкладках.

...