Alterar com de JMenuBar

E ai turma do GUJ, tudo bem com vocês?

Bom, primeiramente o título já explica minha dúvida.

Estou com problemas para alterar a cor de um JMenuBar, estou programando em Java com ajuda do Netbeans.

Sim, já tentei .setBackground,
Já tentei um getContentPane().setBackground();
tentei alguns Overrides…e nada, a barrinha esta lá, cinza, faceira e pachola…
:disappointed_relieved:

Li um pouco a documentação do JMenuBar, porem ainda não consegui.

Alguém da uma luz ai?

Agradeço desde já a atenção :wink:

E ai tudo bem, segue os exemplos:

//alteracao especifica
   jMenuBar1.setOpaque(true);
    jMenuBar1.setUI(new BasicMenuBarUI() {
        public void paint(Graphics g, JComponent c) {
            g.setColor(Color.BLUE);
            g.fillRect(0, 0, c.getWidth(), c.getHeight());
        }
    });
    
    jMenuItem1.setOpaque(true);
    jMenuItem1.setBackground(Color.CYAN);
    
    //----------------------------------------------
    // OU

    //alteracao global usando o UIManager
    UIManager.put("MenuBar.opaque", true);
    UIManager.put("MenuBar.background", Color.RED);
    UIManager.put("Menu.background", Color.GREEN);
    UIManager.put("MenuItem.background", Color.MAGENTA);        
    UIManager.put("MenuItem.opaque", true);
1 curtida

Esse código funcionou, AJUDOU MUITO! :grinning:
Muito obrigado mesmo

Porem, " UIManager " ainda estar fazendo algo de errado, pois usando ele não deu certo.
Pesquisarei mais e verei onde estou errando.

Mas a barra, ficou certinho agora!

Muito obrigado Jaco :+1:

1 curtida

Jaco,

Com esse seguinte código

UIManager.put("MenuBar.background", Color.RED); UIManager.put("MenuBar.opaque", true); UIManager.put("Menu.background", Color.GREEN); UIManager.put("Menu.opaque", true); UIManager.put("MenuItem.background", Color.PINK); UIManager.put("MenuItem.opaque", true);


Consegui seguinte situação:

Mas, por qual motivo essa santa barra não muda de cor?

Ah certo deixa eu ver aqui , estou com outro pepino aqui kkk já vejo