5

Swing Java 開発は初めてです。誰かがこれについて私を助けることができますか?

maskformatter を使用した jformattedtextfield があります。それはうまく動作します。しかし、私が知りたいのは、右から数字を入力するためにこれを作成できるかどうかだけです. 以下のコードは、左から右に数字を入力するのに問題なく機能します。

お時間をいただきありがとうございます。

ここに私が持っているJavaコードがあります:

public class MaskFormattedTextExample extends JFrame {

    private static final long serialVersionUID = -1212313123;

    JFormattedTextField timeField;

    public MaskFormattedTextExample() {
        initComponents();
    }

    private void initComponents() {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setSize(new Dimension(200, 200));
        getContentPane().setLayout(new FlowLayout(FlowLayout.LEFT));

        MaskFormatter mask = null;
        try {
            mask = new MaskFormatter("##:##:##");
            mask.setPlaceholderCharacter('_');
        } catch (ParseException e) {
            e.printStackTrace();
        }

        timeField = new JFormattedTextField(mask);
        timeField.setHorizontalAlignment(JTextField.RIGHT);
        timeField.setCaretPosition(JTextField.RIGHT);

        getContentPane().add(timeField);
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {

            public void run() {
                new MaskFormattedTextExample().setVisible(true);
            }
        });
    }
}
4

1 に答える 1

4

あなたが使用することができます:

timeField.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
于 2012-11-30T17:16:51.040 に答える