2012-02-14 3 views
0

Как изменить цветовую схему базового интерфейса ComboBox? Я пробовал: setForeGround, setBackground, setOpaque (true), setOpaque (false) setBorder. Но ни одна из этих работ не работает.Как вы меняете цветовую схему basicComboBoxUI?

Мой код прямо сейчас:

weaponCB.setBounds(27,250,150,30); 
    weaponCB.setUI(new BasicComboBoxUI()); 
    weaponCB.setForeground(Color.white); 
    weaponCB.setBackground(Color.black); 
    weaponCB.setBorder(whiteBorder); 
    weaponCB.setFont(new Font("Trajan Pro", Font.BOLD, 15)); 
    lP.add(weaponCB, new Integer(2)); 

Это то, что появляется:

enter image description here

Но то, что я действительно хочу для ниспадающего участка (белой области), чтобы выглядеть дисплей (черная область с «LANCE» в белом цвете), т. е. фон будет черным, граница будет белой, а слова будут белыми. Если это возможно, и вы скажете мне, как это было бы очень полезно для меня. Благодарю.

ответ

0

Очень странно, но когда я ставлю оружиеCB.setUI (новый BasicComboBoxUI()); под setBackground и setForeground и setBorder, combobox работает так, как ожидалось. Только граница не отображается.

weaponCB.setBounds(27,250,150,30); 
    weaponCB.setForeground(Color.white); 
    weaponCB.setBackground(Color.black); 
    weaponCB.setBorder(whiteBorder); 
    weaponCB.setFont(new Font("Trajan Pro", Font.BOLD, 15)); 
    lP.add(weaponCB, new Integer(2)); 
    weaponCB.setUI(new BasicComboBoxUI()); 

enter image description here

Другое дело, что работал было:

@Override 
      public void paint(Graphics g) { 
       setBackground(Color.black); 
       setForeground(Color.white); 
       super.paint(g); 
      } 
     });