У меня есть пользовательское поле со списком ListCellRenderer, как показано ниже.
class ArtikelListRenderer extends JLabel implements ListCellRenderer {
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
Artikel artikels = (Artikel) value;
setText(artikels.getName());
return this;
}
}
Я добавляю этот рендер в комбинированный список, как показано ниже.
public void setUpArtikelComboBox() {
panel.lstArtikel = readFromArtikel();
panel.cbxArtikel = new WebComboBox(new ComboBoxModelArtikel(panel, lstArtikel));
panel.cbxArtikel.setAction(new ComboBoxArtikelActionListener(panel));
panel.cbxArtikel.setRenderer(new ArtikelListRenderer());
panel.artikelTabPanel.add(panel.cbxArtikel, BorderLayout.NORTH);
}
Почему я получаю
Exception in thread "AWT-EventQueue-1" java.lang.ClassCastException: java.lang.String
в классе ListCellRenderer в строке:
Artikel artikels = (Artikel) value;