概要

どのJTextFieldを編集しているのかを分かりやすくするために、フォーカスのあるJTextFieldの背景色を変更します。

サンプルコード

class BGFocusListener implements FocusListener {
  private final Color color;
  protected BGFocusListener(Color color) {
    this.color = color;
  }

  @Override public void focusGained(FocusEvent e) {
    e.getComponent().setBackground(color);
  }

  @Override public void focusLost(FocusEvent e) {
    e.getComponent().setBackground(UIManager.getColor("TextField.background"));
  }
}
View in GitHub: Java, Kotlin

解説

上記のサンプルでは、JTextFieldFocusListenerを追加し、focusGained(...)メソッドをオーバーライドして背景色を指定した色に変更、focusLost(...)メソッドをオーバーライドしてJTextFieldのデフォルト背景色(UIManager.getColor("TextField.background"))に戻しています。

参考リンク

コメント