Problema pra trocar a cor da borda de JFomattedTextField[RESOLVIDO]

Não consigo mudar a cor da borda de meu JFormattedTextField, como faço pra muda-la?

private void iWordInitComp() {
        
        
        inputWord.setHorizontalAlignment(JTextField.CENTER);
        inputWord.setBackground(Color.WHITE);
        inputWord.setForeground(Color.BLACK);
        inputWord.setFont(GameFonts.getFontTexts());
        inputWord.setHighlighter(null);
        inputWord.setBounds(-2, -2, 204, 42);
        
        if(!Main.not_singleplayer){
            inputWord.setBorder(new LineBorder(Color.LIGHT_GRAY, 2));
        }
        else if(Main.not_singleplayer){
            if(Main.tp_game_mode.equals(GameRooms.ENDURANCE_MODE)){
                inputWord.setBorder(new LineBorder(new Color(200, 200, 255), 2));
            }
            else if(Main.tp_game_mode.equals(GameRooms.VERSUS_MODE)){
                inputWord.setBorder(new LineBorder(new Color(255, 185, 185), 2));
            }
        }
    }

Obs: Já tentei com BorderFactory.createLineBorder(…), ele passa pelos ifs pois muda a espessura da borda, mas não a cor. Os valores negativos são para que apareça somente a borda inferior do JFormattedTextField. Ele está dentro de um JPanel menor para que apareça somente a borda inferior (isso deu certo).

Valew!!! :smiley_cat:

Resolvi, o problema tava na ordem de instanciação, ou seja, ele instanciava antes do necessário, nesse caso quando carregava a classe main, em um layout do tipo CardLayout, tive que instanciar e adicionar ao layout só quando clicasse em “COMEÇAR”. Desculpa a noobice!!!:joy_cat:

1 curtida

Próxima vez posta o código completo dos seus fontes, não teríamos adivinhado só com o trecho que você postou.

1 curtida

Não daria, este é só um de umas 20 outras classes que faz parte, e quase todas tem cerca de 200 linhas. ueheuheuehueheuehu :joy_cat:

Fica a dica: 1 fonte de 200 linhas não é muita coisa.