我有一个扩展的jFormattedTextField,在这个字段中,我有一种方法来验证它是否为空,但是在jTextField中它可以工作,但在jFormattedTextField中没有。

当我通过框架上的字段时:

RVDFormattedTextField[] obrigatoriosFTF = new RVDFormattedTextField[1];
    private void setaObrigatorios() {
        obrigatoriosFTF[0] = rvfCNPJ;
    }
if (RVDFormattedTextField.isEmpty(obrigatoriosFTF)) {
            Mensagem.aviso("Preencha os campos obrigatórios (*).", this);
        } else {


jFormattedTextField中的方法:

public static boolean isEmpty(RVDFormattedTextField[] campos) {
        Boolean ok = false;
        for (int i = 0; i < campos.length; i++) {
            if (Formatacao.removerFormatacao(campos[i].getText()).trim().isEmpty()) {
                ok = true;
                if (campos[i].isEditable()) {
                    campos[i].setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(255, 51, 51)));
                }
            } else {
                campos[i].setBorder(javax.swing.BorderFactory.createEtchedBorder());
            }
        }
        return ok;
    }


不显示错误,尝试在方法中添加内容并进行调试,但是什么也没有发生。

方法removerFormatacao

    public static String removerFormatacao(String dado) {
        String retorno = "";
        for (int i = 0; i < dado.length(); i++) {
            if (dado.charAt(i) != '.' && dado.charAt(i) != '/' && dado.charAt(i) != '-' && dado.charAt(i) != '(' && dado.charAt(i) != ')') {
                retorno = retorno + dado.charAt(i);
            }
        }
        return (retorno);
    }


方法格式arCNPJ(掩码)

    public static void formatarCnpj(JFormattedTextField campo) {
        try {
            MaskFormatter m = new MaskFormatter();
            m.setPlaceholderCharacter(' ');
            m.setMask("##.###.###/####-##");
            campo.setCaretPosition(0);
            campo.setFormatterFactory(null);
            campo.setFormatterFactory(new DefaultFormatterFactory(m));
            campo.setValue(null);
        } catch (Exception e) {
            System.err.println(e);
        }
    }


我试图删除这两种方法,但仍然无法正常工作。

最佳答案

那么,在JFormattedText上使用哪个掩码以及Formatacao.removerFormatacao实现如何?

关于java - 检查扩展jTextFormattedField是否为空,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57466608/

10-10 02:02