Javaアプリケーションのすべてのコンポーネントのフォーカスを追跡したいと思います。ほとんどのコンポーネントで機能するメソッドを登録しましたが、タブの変更では機能しません。コードは次のとおりです。
FocusManager.getCurrentManager().addPropertyChangeListener(new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {
System.out.println(evt.getPropertyName() + " " + evt.getNewValue());
}
}
JTabbedPaneのタブを変更しても、メッセージは出力されません。これは、JTabbedPaneフォーカスが変更されていないことが原因であると思われます(別のタブをクリックすると、それがまだ親JTabbedPaneに属している可能性があるため)。
これに対する回避策はありますか、または変更されているタブに対しても機能するJavaのフォーカス変更を追跡するためのsaveメソッドを知っている人はいますか?
乾杯、マックス