Swing/FocusColor のバックアップの現在との差分(No.3)
- バックアップ一覧
- 差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- バックアップ を表示
- Swing/FocusColor へ行く。
- 追加された行はこの色です。
- 削除された行はこの色です。
TITLE:JTextFieldにフォーカスがある場合の背景色を設定 #navi(../) #tags() RIGHT:Posted by &author(aterai); at 2006-08-07 *JTextFieldにフォーカスがある場合の背景色を設定 [#rfb552fd] どのJTextFieldを編集しているのかを分かりやすくするために、フォーカスのあるJTextFieldの背景色を変更します。 --- 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 --- * 概要 [#summary] どの`JTextField`を編集しているのかを分かりやすくするために、フォーカスのある`JTextField`の背景色を変更します。 -&jnlp; -&jar; -&zip; #download(https://lh6.googleusercontent.com/_9Z4BYR88imo/TQTM__NmYpI/AAAAAAAAAaE/EUMDKR-Rwa4/s800/FocusColor.png) //#screenshot #ref(http://lh6.ggpht.com/_9Z4BYR88imo/TQTM__NmYpI/AAAAAAAAAaE/EUMDKR-Rwa4/s800/FocusColor.png) **サンプルコード [#eb0e7a99] * サンプルコード [#sourcecode] #code(link){{ 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; class BGFocusListener implements FocusListener { private final Color color; protected BGFocusListener(Color color) { this.color = color; } public void focusGained(final FocusEvent e) { ((JTextField)e.getSource()).setBackground(dColor); @Override public void focusGained(FocusEvent e) { e.getComponent().setBackground(color); } public void focusLost(final FocusEvent e) { ((JTextField)e.getSource()).setBackground(oColor); @Override public void focusLost(FocusEvent e) { e.getComponent().setBackground(UIManager.getColor("TextField.background")); } } }} **解説 [#rb40a9f5] JTextFieldにFocusListenerを追加することで、focusGained、focusLostした場合にそれぞれ背景色を変更しています。 * 解説 [#explanation] 上記のサンプルでは、`JTextField`に`FocusListener`を追加し、`focusGained(...)`メソッドをオーバーライドして背景色を指定した色に変更、`focusLost(...)`メソッドをオーバーライドして`JTextField`のデフォルト背景色(`UIManager.getColor("TextField.background")`)に戻しています。 //**参考リンク **コメント [#o9ee515c] * 参考リンク [#reference] - [https://docs.oracle.com/javase/jp/8/docs/api/java/awt/event/FocusListener.html FocusListener (Java Platform SE 8)] * コメント [#comment] #comment #comment