List<String> (@NotNull JComboBox<?> comboBox) { @SuppressWarnings("unchecked") ListCellRenderer<Object> renderer = (ListCellRenderer<Object>)comboBox.getRenderer(); if (renderer == null) { renderer = new DefaultListCellRenderer(); } @SuppressWarnings("unchecked") JList<?> jList = new BasicComboPopup((JComboBox<Object>)comboBox).getList(); List<String> result = new ArrayList<>(); int count = comboBox.getItemCount(); for (int i = 0; i < count; i++) { Object value = comboBox.getItemAt(i); Component labelComponent = renderer.getListCellRendererComponent(jList, value, i, false, false); List<String> label = getLabelsFromComponent(labelComponent); result.addAll(label); } return result; }