\JTextField の作成は次のとおりです。
hourlyWageInput = new JTextField("7.25");
DocumentFilter filter = new UppercaseDocumentFilter();
((AbstractDocument) hourlyWageInput.getDocument()).setDocumentFilter(filter);
hourlyWageInput.setHorizontalAlignment(JTextField.CENTER);
add(hourlyWageInput);
ここに私の DocumentFilter があります:
import javax.swing.text.BadLocationException;
import javax.swing.text.DocumentFilter;
public class UppercaseDocumentFilter extends DocumentFilter {
public void replace(DocumentFilter.FilterBypass fb, int offset, int length,
String text, javax.swing.text.AttributeSet attr)
throws BadLocationException {
fb.insertString(offset, text.replaceAll("\\D", ""), attr);
}
}
これにより、JTextField からすべての文字が自動的に削除されます。
しかし、「\D」に似たすべてのコマンドを含む場所を誰かが知っているかどうか疑問に思っていました. 正しい情報を見つけるのに時間がかかりました。
また、私が今持っているコードも. 私はダブルスを扱っているので、私が必要とするタイプではありません。何か案は?
ありがとう!今日私が学んだことは驚くべきことです。私は13時間連続でコーディングしています。