Como mudar a cor de fundo de jComoboBox?

10 respostas
D

Boa dia, pessoal.

Como eu faço para mudar a cor de fundo de um jCombobox?

Tentei desta forma não funcionou:
meuCombox.setBackground(Color.white);

Segue a imagem do efeito que eu quero.

Agradeço qualquer sugestão.

10 Respostas

edufera10

Eu fiz assim

parece ser igual ao seu não?

dstori

Na verdade você alterou a cor dos items do combo, o que voce quer, acredito eu, é alterar a cor da seleção.
Para isso você tem que alterar a propriedade da UI:

UIManager.put("ComboBox.selectionBackground", Color.white);
edufera10

dstori:
Na verdade você alterou a cor dos items do combo, o que voce quer, acredito eu, é alterar a cor da seleção.
Para isso você tem que alterar a propriedade da UI:

UIManager.put("ComboBox.selectionBackground", Color.white);

bem eu altero a cor dos intens assim:

pode ser que do seu geito funcione também mas estou com a IDE aberta aqui e esta funcionando tanto o Foreground quando o Background;

Talvez falte o import java.awt.Color; não sei qual IDE nosso amigo esta usando…

D

Relamente da primeira foma não deu certo.

UIManager.put(“ComboBox.selectionBackground”, Color.white);

ComboBox e meu combo?Pq se for não funcionou.

dstori

Não, voce deve colocar exatamente como está. Ele vai alterar aquele azul padrão do item selecionado.
Vale dizer que este comando deve estar antes da criação do ComboBox.

D

Eu coloquei logo do contrutor :

initComponents();
		getContentPane().setBackground(Color.WHITE);
		UIManager.put("ComboBox.selectionBackground", Color.white);

Porém não funcionou eu agradeço qualquer sugestão.

dstori

Desculpe, acho que não fui claro, você deve adicionar antes do combo ser construído. Creio que voce colocou na construtora do combo.
Faça o seguinte, coloca antes de qualquer coisa, por exemplo, no void main.

edufera10

Daniel.F:
Eu coloquei logo do contrutor :

initComponents();
		getContentPane().setBackground(Color.WHITE);
		UIManager.put("ComboBox.selectionBackground", Color.white);

Porém não funcionou eu agradeço qualquer sugestão.

Daniel, não sei que IDE você esta usando mas se tiver usando o netbeans clique com o botão direito no jcombobox e propriedades.

La você vai encontrar o setBackground e setForeground.

Eu coloquei no action de um jbutton o setBackground(Color.red) e funcionou, ou seja em tempo de execução…

mas o que o dstori disse faz sentido também tanto para o que eu disse na 1ª resposta quanto para o que ele disse na 1ª resposta dele

D

Ok. Eu coloquei no lugar no certo
porém ,quando o combo permanece selecionado ele não
fica com a cor branca.Eu agradeço qual sugestão que possa dar por favor.

edufera10

mas então sua intenção é evitar que ele mude de cor e não muda-la, certo?

acho que você pode fazer com o evendo onclick no combo box ai acho que a solução do dstori fica melhor

Criado 10 de agosto de 2009
Ultima resposta 10 de ago. de 2009
Respostas 10
Participantes 3