Swing/VerifyInputWhenFocusTarget のバックアップ(No.7)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- Swing/VerifyInputWhenFocusTarget へ行く。
- 1 (2014-10-02 (木) 19:54:08)
- 2 (2015-11-07 (土) 04:01:20)
- 3 (2017-03-30 (木) 14:08:26)
- 4 (2017-09-26 (火) 10:59:49)
- 5 (2018-02-27 (火) 13:13:29)
- 6 (2020-03-05 (木) 17:23:07)
- 7 (2021-08-19 (木) 00:53:43)
- 8 (2025-01-03 (金) 08:57:02)
- 9 (2025-01-03 (金) 09:01:23)
- 10 (2025-01-03 (金) 09:02:38)
- 11 (2025-01-03 (金) 09:03:21)
- 12 (2025-01-03 (金) 09:04:02)
- category: swing
folder: VerifyInputWhenFocusTarget
title: InputVerifierを設定したJTextFieldの値が不正な場合のフォーカス移動
tags: [JTextField, InputVerifier, Focus]
author: aterai
pubdate: 2014-03-10T10:15:22+09:00
description: InputVerifierを設定したJTextFieldの値が適切な形式でない場合のフォーカス移動動作をテストします。
image:
概要
InputVerifier
を設定したJTextField
の値が適切な形式でない場合のフォーカス移動動作をテストします。
Screenshot

Advertisement
サンプルコード
解説
上記のサンプルでは、フォーカスが別のコンポーネントに移動する時に現在フォーカスを持つコンポーネントのInputVerifier
で値を検証するかをテストしています。
Default
:JButton
のデフォルトでgetVerifyInputWhenFocusTarget()
がtrue
、isFocusable()
もtrue
- すべての
JTextField
の値をクリアして自身にフォーカスが移動するが、フォーカスの存在したJTextField
に入力されている値がInteger
でない場合警告音が鳴る
setFocusable(false)
:setFocusable(false)
を設定- すべての
JTextField
の値をクリアするが、フォーカスは移動しないためフォーカスの存在したJTextField
に入力されている値がInteger
でない場合でも警告音は鳴らない(設定されているInputVerifier#verify(...)
は呼ばれない)
setVerifyInputWhenFocusTarget(false)
:setVerifyInputWhenFocusTarget(false)
を設定- すべての
JTextField
の値をクリアして自身にフォーカスが移動するが、フォーカスの存在したJTextField
に入力されている値がInteger
でない場合でも警告音は鳴らない(設定されているInputVerifier#verify(...)
は呼ばれない)