Witam,
piszę właśnie program na zaliczenie w Swingu i zacząłem długą i mozolną zabawę nad własnym ostylowaniem tego.

link:
http://img801.imageshack.us/img801/8808/gb1p.jpg

Chciałem uzyskać dokładnie taki efekt i poza zmianą koloru strzałki wszystko się udało. Zastanawiam się jak wygląda w firmach praca na designem czy w ogóle ktoś się tym zajmuje czy może nikt nie przykłada do tego wagi. Interesuje mnie także czy to co zrobiłem da się po stronie kodu napisać lepiej bo tutaj troszeczkę pewnie namotałem.

public class SelectMessagesType extends JComboBox {
	private String[] names;
	private DefaultComboBoxModel cbm;
	@SuppressWarnings("unchecked")
	public SelectMessagesType(String[] _names) {
		super();
        UIManager.put("ComboBox.foreground", new Color(252, 200, 101));
        UIManager.put("ComboBox.background", new Color(41, 31, 40, 255));
        UIManager.put("ComboBox.buttonBackground", new Color(41, 31, 40, 255));
	  names = _names;
  
        cbm = new DefaultComboBoxModel(names);
        setModel(cbm);
        
        
        
		setUI(new BasicComboBoxUI() {
			@Override
			protected JButton createArrowButton() {
				JButton b = super.createArrowButton();
				b.setContentAreaFilled(false);
				b.setBorder(BorderFactory.createEmptyBorder());
			
				return b;
			} 
		});

		setFocusable(false);
		
	}
} 

a tutaj wstawienie tego do JPanelu

 		
		sMT = new SelectMessagesType(selectNames);
		sMT.addActionListener(this);
		sMT.setOpaque(true);
		sMT.setBorder(BorderFactory.createEmptyBorder());
		sMT.setFocusable(false);
		sMT.setBackground(new Color(41, 31, 40, 255));
	
		JScrollPane pane = new JScrollPane(sMT);
		pane.setBackground(new Color(224, 170, 65));
		pane.setBounds(10, 43, 240, 20);
		pane.setBorder(BorderFactory.createEmptyBorder());
		add(pane);