Ширина автоматически определяется шириной самого большого элемента, добавленного в поле со списком. Вы можете управлять дисплеем с помощью:
comboBox.setPrototypeDisplayValue("text here");
Вы также можете использовать всплывающее окно Combo Box для управления размером всплывающего окна.
Edit:
Поскольку вы добавили код, который показывает, что вы используете BoxLayout, вы можете попробовать следующее:
comboBox.setMaximumSize( comboBox.getPreferredSize() );
Или вы можете сделать что-то вроде:
JPanel wrapper = new JPanel();
wrapper.add( comboBox );
panel.add( wrapper );
Прочтите раздел из учебника по Swing на Использование менеджеров по расположению , чтобы понять, как работают эти предложения.