2

特定の測定単位で値を受け入れる数値 JSpinner があります。ここで、特別な JSpinner の動作が必要です。ユーザーが数値を入力し、特定の測定単位文字列 ("inch"、"pica" など) を追加した場合、入力された数値を別の値に変換する必要があります (単位文字列で)。この変換は、ユーザーがスピナー フィールドを離れた (フォーカスが失われた) 場合、または何らかの方法で「commitEdit」が発生した場合に発生する必要があります。

スピナーの JFormattedTextField 用のカスタム ドキュメント フィルタ、カスタム フォーマット インスタンス、カスタム テキスト フィールド ドキュメントなど、いくつかのバリエーションを試しました。しかし、JFormattedTextField の「commitEdit」メソッド呼び出しを「フック」する可能性は見つかりませんでした。

私の要件を実装するための最良のアプローチは何ですか? それを行う簡単な方法はありますか?

4

1 に答える 1