2011-12-26 2 views
5

私はJavaとNetBeansの初心者です。私は2つの数字を導入し、その合計を2で割った簡単なプログラムを作ろうとしています。しかし、私はJFormattedTExtFieldを使用していますが、私はそれらの許可された入力をカスタマイズする方法を知らない。基本的に私は以下の方法を見つけようとしています:jFormattedTextFieldを設定するには2つの数字しか使用できないようにするには?

  • 数字はJFormmatedTextFieldにのみ入力できます。
  • 特定の数値だけを許可します。
+1

あなたは、あまりにも – mKorbel

答えて

9

NumberFormatを使用して、setMaximumIntegerDigitsの整数の最大桁数を指定できます。

ここは素敵です。articleです。挿入された文字列形式を満たすことを保証すべきである

NumberFormat f = NumberFormat.getNumberInstance(); 
f.setMaximumIntegerDigits(maxDigitsAmount); 
JFormattedTextField field = new JFormattedTextField(f); 

Format

基本的にはあなたのような何かを行うことができます。たとえ数値が指定されていても、テキストフィールドはそれを文字列として格納します。だから、あなたは、元の整数が必要な場合は、提案@noiseのようにそれを再構築する必要があります。

Integer i = Integer.toString(field.getText()); 
+0

感謝をするJSpinnerを見て可能性があります!ああ、別のもの。誰かがテキストフィールドのテキストをintに設定する方法を教えてもらえますか?たとえば、2つのint(2つのテキストボックスに入力された値)と2つのintの合計に等しいrezult intがあります。 jTextField1.setText(rezult)を呼び出すと、intの代わりにstringが要求されます。どんな助け? – Bugster

+1

'Integer.toString(int)'を使用してください –

+0

ありがとうたくさんの人。私はJFormattedTextField field = new JFormattedTextField(f)を呼び出すときを除いて、ほとんどそれを修正しました。 「記号JFormattedTextFieldが見つかりません」というエラーが表示されます。何か案が? – Bugster

関連する問題