• category: swing folder: FocusColor title: JTextFieldにフォーカスがある場合の背景色を設定 tags: [JTextField, FocusListener] author: aterai pubdate: 2006-08-07T16:37:20+09:00 description: どのJTextFieldを編集しているのかを分かりやすくするために、フォーカスのあるJTextFieldの背景色を変更します。 image: https://lh6.googleusercontent.com/_9Z4BYR88imo/TQTM__NmYpI/AAAAAAAAAaE/EUMDKR-Rwa4/s800/FocusColor.png

概要

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

サンプルコード

private static class BGFocusListener implements FocusListener {
  private final Color dColor;
  private final Color oColor;
  public BGFocusListener(Color oColor, Color dColor) {
    this.dColor = dColor;
    this.oColor = oColor;
  }
  @Override public void focusGained(final FocusEvent e) {
    ((JTextField) e.getSource()).setBackground(dColor);
  }
  @Override public void focusLost(final FocusEvent e) {
    ((JTextField) e.getSource()).setBackground(oColor);
  }
}
View in GitHub: Java, Kotlin

解説

JTextFieldFocusListenerを追加することで、focusGainedfocusLostした場合にそれぞれ背景色を変更しています。

コメント