ホームページ > Java > &#&チュートリアル > JTextField 入力を正の整数のみに制限するにはどうすればよいですか?

JTextField 入力を正の整数のみに制限するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-12-12 21:18:15
オリジナル
141 人が閲覧しました

How to Restrict JTextField Input to Positive Integers Only?

JTextField 入力を整数に制限する

JTextField での入力を正の整数に制限するには、KeyListener ではなく DocumentFilter を使用することをお勧めします。 DocumentFilter は、さまざまな入力シナリオを処理する、より包括的なソリューションを提供します。

DocumentFilter の実装

DocumentFilter は、挿入時に入力を検証するために実装できます。このサンプル フィルター MyIntFilter は、入力されたテキストが有効な整数を表していることを確認します。

class MyIntFilter extends DocumentFilter {
    ...
    private boolean test(String text) {
        try {
            Integer.parseInt(text);
            return true;
        } catch (NumberFormatException e) {
            return false;
        }
    }
    ...
}
ログイン後にコピー

このフィルターは、入力テキストが整数として解析できるかどうかを確認します。有効な場合、挿入が許可されます。それ以外の場合は、挿入が妨げられます。

DocumentFilter の適用

JTextField にフィルターを適用するには、setDocumentFilter メソッドを使用します。

PlainDocument doc = (PlainDocument) textField.getDocument();
doc.setDocumentFilter(new MyIntFilter());
ログイン後にコピー

を使用する利点DocumentFilter

  • 貼り付けや切り取り/コピー操作など、さまざまな入力シナリオを処理します。
  • 数値制限や特定のデータ形式のチェックなど、複雑な入力検証が可能です。
  • 入力検証を別個に保持することでコードを簡素化しますクラス。

以上がJTextField 入力を正の整数のみに制限するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート