問題タブ [jformattedtextfield]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - NumberFormatter に関する質問
これがコードです。これにより、テキスト フィールドに対して整数入力のみが有効であるという制約が追加されることを願っています。
しかし、私が驚いたのは、100aaa を入力すると有効になり、100.111 も有効になることです。整数のみが有効な入力であることを制限するにはどうすればよいですか?
java - スイング:JFormattedTextFieldがフォーカスが失われたときに「、」を追加するのはなぜですか
質問はタイトルにあります。
テキストフィールドにint番号を表示していますが、フィールドを終了すると「、」が追加され続けます...理由は何ですか?
コード愛好家のために:
onfocuslost呼び出し:
それから :
フィールドに設定されたテキストとその正しい10000を確認しましたが、10,000に変更され、理由がわかりません。
java - 異なる桁数を受け入れるJFormattedTextField
小数点以下3桁に制限するJTextFieldが必要です。検索した後、私はJFormattedTextFieldを発見しました。これは見栄えがします。現在のコードは次のとおりです。
ただし、auxが4桁の整数と3桁の10進数でない場合は機能せず、JFormattedTextFieldは空のように見えます。コードは機能します。たとえば、Auxは1000.000でした。
他のアイデア?
java - FocusEventはJFormattedTextFieldの最後の値を取得しません。どうすれば取得できますか?
JFormattedTextField
オブジェクトに2つのオブジェクトがありJFrame
ます。JFormattedTextField
これらのオブジェクトの値による基本的な数学(加算)が必要です。フォーカスが最初または2番目のテキストフィールドのいずれかを失ったときに発生するようにします。ただし、 " focusLost()
"の場合、イベントは最後の値を取得しませんが、前の値を取得します。
例えば; tf1
は0tf2
で、最初は0です。に2を書き込みtf1
、focusLost()
結果(tf1+tf2
)が0のままになります。いずれかを変更すると、結果は2(前の値)になります。
focusLostの最後の値を取得するにはどうすればよいですか?
これが私のコードです:
およびfocusLost()
:
java - JTextField のカスタム テキスト制約
カスタム テキスト制約を JTextField に追加するにはどうすればよいですか?
たとえば、ユーザーに次のような形式で入力してもらいたいと思います:
12-100
78-023
java - Java の JFormattedTextFields による検証
次の検証を持つ2つのテキストフィールドが必要です
- どちらも整数でなければなりません
- 1 つのテキスト フィールドの値は、他のテキスト フィールドの整数倍にする必要があります。
これには 2 つの JFormattedTextFields を使用しました。これは私が今までやってきたことです
これの助けを借りて、私の最初の部分は完了しました。今、私は 2 番目の部分で立ち往生しています。つまり、jFormattedTextField1 の値は、jFormattedTextField2 の整数倍でなければなりません。NumberFormat を拡張してカスタマイズする必要があると思います。しかし、どうすればいいですか?私を助けてください
java - jFormattedTextField に「On Change」リスナーを配置する
プログラムに jFormattedTextField があり、jFormattedTextField 値が有効に変更されたときに jLabel のテキストを更新する必要があります。
実際、jFormattedTextField は数値を取得し、jLabel はこの数値と別の数値の差を表示します。
私は現在、jFormatted テキストの "FocusLost" イベントをリッスンしてこれを行っています。
これどうやってするの?
java - jFormattedTextField の Formatter.setCommitsOnValidEdit(true) が最初のフォーカスで機能しない
私は持っていて、 truejFormattedTextField
に設定setCommitsOnValidEdit
してから、「値」プロパティの「プロパティ変更」にイベントリスナーを追加しました。
最初の焦点は、jFormattedTextField
入力時にイベントリスナーメソッドを呼び出さないことです。しかし、「focusLost」ではイベントリスナーを呼び出し、その後再びフォーカスを受け取ると、入力時にイベントリスナーを呼び出します。
その中でいつでも変更後にイベントリスナーを呼び出してくださいjFormattedTextField
(最初のフォーカスでも)。
どうしたの?どうすれば修正できますか?
java - JFormattedTextField の問題
1)invokeLater()にラップされたCaretまたはFocusを使用せずにCursorを0位置に設定するにはどうすればよいですか( @camickr Formatted Text Field Tipsを使用して快適に解決できます)、別の方法を知っている人がいますか
2)How to reset Formatter
場合によっては (キーボードから TAB でフォーカスを上げて)、リセットが機能せず、focusLost (空のフィールド) でフォーマッターが返される/再生成された文字または文字列が返されます (setText(""); の前に最後に認識されます)。
注:OTNからフォーマッタをリセットする方法について、コードまたは次のコードis only this way
を知っていますが、彼らのひどい検索ルール....、コードのみ(Jeanetteによる質問または回答???)
添付の画像は私のsscceに基づいています
java - SwingJComponentsで分数をレンダリングする方法
基本的に、Swing JComponentsは、この形式で数値を分数で表示できます2 2/3
。分数を最も良い形、たとえば2⅔でペイントするにはどうすればよいですか?
。
編集
。
JTable
ご覧のとおり、内部JSpinner
には1つの方法しかありませんTableColumn
(TableRow
プレーンをシミュレートすることもできJtextField
ます)。ここで、Htmlを使用してフォーマットし、イベントでプレーンに切り替えることTableRenderer
ができます。JTextComponent
TableCellEdit
TableEditor
JFormattedTextField
別の方法はありますか、それはプレーンでも可能でしょうJ(Formatted)TextField
か?