java - Swing - MaskFormatter - 从文本字段的右侧输入数字

标签 java swing jformattedtextfield

我是 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);
            }
        });
    }
}

最佳答案

你可以使用:

timeField.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);

关于java - Swing - MaskFormatter - 从文本字段的右侧输入数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13649810/

相关文章:

java.lang.ClassCastException : [Ljava. lang.Object;以及如何转换类

java - 硬编码按钮不会出现在设计 View 或正在运行的程序中

java - JFormattedTextField 值设置为 Float,掩码设置为 ##,##

java - 如何从Android中的服务器播放音频

java - DynamoDB 继承无映射父哈希

java - Dynamic Code Evolution VM 崩溃

java - JFormattedTextField : input time duration value

java - JFormattedTextField 未正确清除

java - TestNG 中的 IInvokedMethodListener 和 IMethodInterceptor 有什么区别?

java - 我需要做什么来用渐变绘画复制这个组件?